Gearman: ¿todavía no hay manera de recuperar datos personalizados de un trabajador en segundo plano?

Lo primero es lo primero, soy consciente deesta pregunta:

Gearman: envío de datos de un trabajador de fondo al cliente

Lo que quiero saber, ¿sigue siendo el caso con Gearman? Estoy planeando enviar un lote de URL de imágenes desde una aplicación web de PHP al gearman worker (también escrito en PHP; llamémoslo "The Main Worker") para procesarlo de forma asíncrona. Este trabajador enviará una tarea separada para cada imagen a los trabajadores de nivel inferior (mediante addTask ()), llamará a RunTasks () y esperará a que finalicen las tareas, mientras escucha las excepciones, acumula mensajes de error y actualiza el estado general del trabajo.

Si bien estoy perfectamente de acuerdo con recuperar el estado general del Trabajador principal utilizando las llamadas a jobStatus (), simplemente diga que todas las imágenes se procesaron cuando se devuelve [falso, falso, 0, 0], Iseguro debe poder informar a los usuarios de que algunas de las imágenes no se pudieron recuperar de sus respectivas URL o almacenarlas en el servidor.

Supongo que siempre podría simplemente almacenar los datos personalizados en memcache, luego recuperarlos de la aplicación web, pero a mi me parece "más sucio" ...

No estoy tratando de obtener ningún resultado, porque por lo que he visto en el manual en php.net, incluso el manejo de excepciones solo se puede realizar cuando la tarea se envía de forma sincrónica, sin mencionar la recuperación de datos personalizada. Solo esperaba que pudiera faltar algo. Recuerdo correctamente, estamos usando Ubuntu Server 12.04 con libgearman6 (v 0.27) y PHP 5.3.10. La versión de la extensión de gearman es 1.0.2. Creo que la base de datos es irrelevante aquí, ya que no la usaré en ninguno de los trabajadores. Y creo que no estamos usando colas persistentes en este momento.

Respuestas a la pregunta(1)

Su respuesta a la pregunta