drupal cron execution-time

drupal tiempo máximo de ejecución de cron



execution-time (4)

El tiempo máximo de ejecución para el cron de Drupal depende de tu php.ini .

Por ejemplo, si usa wget -O - -q -t 1 http://www.example.com/cron.php como su comando cron, apache''s php.ini se usa para determinar el tiempo máximo de ejecución.

Si usa php -f cron.php como su comando cron, php.ini de php-cli se usa para determinar el tiempo máximo de ejecución.

Se recomienda utilizar php-cli para un mayor tiempo de ejecución, donde puede establecer el tiempo máximo de ejecución desde /etc/php5/cli/php.ini (si usa debian linux) y no tiene efectos secundarios en apache mientras se ejecuta cron.

Cuál es el tiempo máximo de ejecución de cron. es posible modificarlo si es que tiene efectos secundarios.


No sé si este es necesariamente el caso, ya que acabo de ejecutar el cron.php través de mi navegador y estoy obteniendo un max excution time error máximo de tiempo de ejecución de 240 segundos, mientras que mi tiempo máximo de ejecución en mi php.ini es de 1200 segundos . Entonces, en algún lugar, además de mi archivo php.ini, Drupal está tomando el tiempo máximo de ejecución.

Ese lugar estaría en ./includes/common.inc o ./includes/locale.inc . Diríjase a allí y hay ajustes para ajustar cuánto tiempo drupal le permitirá correr al cron antes de darse por vencido


La respuesta aceptada anteriormente es INCORRECTA. El límite de tiempo de Cron en Drupal está codificado a 240 segundos. Vea la función drupal_cron_run en includes/common.inc , específicamente estas líneas:

drupal_set_time_limit(240);

y

if (!lock_acquire(''cron'', 240.0)) {

(basado en la fuente de Drupal 7.12)

Entonces, no hay forma de cambiar esto globalmente sin hackear el núcleo. He escuchado que sugerimos llamar a drupal_set_time_limit dentro de su implementación de hook_cron , al hacerlo restablece el contador de PHP. Sin embargo, eso no lo ayudará cuando se trata de un módulo de terceros que implementa hook_cron .