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.

¿Fue útil?

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top