Estoy trabajando en un sitio web de procesamiento de imágenes, en lugar de tener trabajos largos para mantener el navegador de los usuarios Quiero que todos los comandos vuelvan rápido con una identificación de trabajo y que una tarea en segundo plano haga el trabajo real. La identificación se podría usar para verificar el estado y los resultados (es decir, una url de la imagen procesada). He encontrado muchos gestores de colas distribuidas para ruby, java y python, pero no conozco lo suficiente de ninguno de esos idiomas para poder usarlos.¿Cuáles son algunos buenos gestores de colas distribuidos en php?
Mis propias pruebas han estado con la base de datos mysql compartida para poner trabajos en cola, bloquearlos a un trabajador y marcarlos como completados (guardando los datos de retorno en el db). Era solo un prototipo desordenado, y todo el tiempo sentí como si estuviera reinventando la rueda (y no muy elegantemente). ¿Existe algo en php (o que pueda hablar con RESTfully?) Que pueda usar?
Leyendo un poco más, he encontrado que lo que estoy buscando es un sistema de colas que tiene una API api, no tiene que estar escrito en php. Solo encontré clases para usar con SQS de Amazon, pero no solo eso no es gratis, también es bastante latente a veces (más de un minuto para que aparezca un mensaje).
Me gusta el enfoque inittab - php tiende a perder memoria con el tiempo por lo que morir una vez por minuto podría no ser una mala idea – reconbot
Uso un script de shell que al final hace un 'exec $ 0' para volver a ejecutarlo . El cliente puede salir a voluntad y reiniciarse. –