¿Qué constituye un reintento en la cola de tareas?
-
10-10-2019 - |
Pregunta
Iniciado esta pregunta en los foros de más de Zend, pero pensé que también sería conveniente publicar aquí.
¿Qué tiene que suceder, exactamente, para un trabajo para volver a intentar? He probado los tiempos de espera, 50x códigos de respuesta, y establecer el estado a "FALLO".
Tengo un simple script que crea un trabajo ...
$job_url = 'http://localhost/consumer.php?time=' . microtime(true);
$job_queue = new ZendJobQueue();
$job_options = array(
'name' => 'Test Job'
);
$job_id = $job_queue->createHttpJob(
$job_url,
array(),
$job_options
);
He tratado de provocar un reintento del trabajo mediante la eliminación de consumer.php, devolviendo un 500 desde dentro consumer.php, y tener consumer.php llevar más tiempo que las de 120 segundos para zend_jobqueue.http_job_timeout en el jqd.ini . Ninguno de ellos parece desencadenar un reintento.
Por lo tanto, pido, lo que realmente va a desencadenar un reintento?
Por favor, ayuda.
Solución
Después de una gran cantidad de conversaciones con el equipo de ingeniería de Zend - vía e-mail, teléfono y en persona en ZendCon 2010 -. La respuesta se descubrió que era un error en la utilidad de la cola de tareas
Versión 5.0.4 de Zend servidor contenía una solución a la utilidad de cola de tareas, en concreto para un mejor manejo de reintento de errores HTTP.
Consulte el notas de la versión .
Lo siento por el retraso en la limpieza de esta pregunta.