2011-01-23 6 views
22

tener instalada planta de frijoles en mi servidor, y ejecute el siguiente:¿Cómo puedo obtener una lista de todos los trabajos en un tubo de habichuelas mágicas?

$ telnet localhost 11300 
use my_tube 
USING my_tube 
peek-ready 
FOUND 11065 41 
{"ts":1295537419,"data":{"nid":"212156"}} 

Ahora mi pregunta es: ¿cómo puedo obtener una lista de todos los trabajos de la cola; algo así como peek-all?

+0

+1 @Alaa, hmm gracias nunca nuevo acerca de 'beanstalkd' parece útil. Trataré de jugar con esto :) – Jakub

Respuesta

30

Hay algunas bifurcaciones del código principal que proporcionan este tipo de información (retrieving ready, reserved, and buried jobs in a tube), pero no está en la versión troncal principal. Esto se debe a los problemas que puede traer, como en una implementación enorme que tendría que devolver una gran cantidad de datos potencialmente y bloquear el servidor de hacer cualquier otro trabajo mientras tanto.

En última instancia, BeanstalkD es una cola, no una matriz, y no está diseñada para permitir el acceso a cada elemento dentro de ella, devuelve el siguiente elemento para trabajar.

Pensar en el problema desde otra dirección puede ser útil, como preguntar por qué necesita la información sobre el contenido de la cola y posiblemente ensamblar los datos que necesita como elementos agregados, con su propio código.

Cuestiones relacionadas