Оптимальная конфигурация Apache2 для этого сценария

Оптимальная конфигурация Apache2 для этого сценария

Мне было бы интересно услышать мнения о лучшей конфигурации веб-сервера Apache в этом сценарии.

У меня есть несколько скриптов (PHP), которые запускаются через регулярные промежутки времени, большинство из них одновременно или через одинаковые временные интервалы с помощью задания cron.

По мере того, как я размещаю все больше и больше таких скриптов, называемых веб-страницами и написанных на PHP, я немного обеспокоен тем, что могу начать «терять» некоторые из них по пути, поскольку они все запускаются одновременно.

Поскольку «никто» на самом деле их не видит и не ждет, пока эти страницы загрузятся (задержка в несколько секунд не является проблемой), мне было интересно, на какие настройки в apache2.conf следует обратить внимание, чтобы убедиться, что все эти вызовы страниц действительно обрабатываются (даже с задержкой в ​​несколько секунд), а не отбрасывать их Apache, если он не может обработать их за определенный период времени (в отличие от стандартных страниц html/php, которые просматривает пользователь, просматривающий веб-сервер, это просто страницы, которые выполняют скрипты, которых на самом деле никто не ждет).

Мое идеальное решение заключается в том, чтобы они (страницы, вызываемые через cron) просто накапливались и обрабатывались одна за другой до тех пор, пока не будет вызвана следующая партия или в более спокойный период, а не Apache убивал их из-за того, что они не были выполнены в определенный промежуток времени.

Конечно, я понимаю, что если они будут стоять в очереди дольше, чем должна быть готова следующая партия, то у меня возникнут проблемы.

В то же время, как я могу посмотреть, что Apache поставил в очередь или какие страницы он обрабатывает?

Заранее спасибо.

решение1

Я не вижу необходимости использовать Apache в этом контексте, если у вас есть доступ к cron. Вам не нужно обслуживать страницы, по-видимому, вам нужно только выполнять код.

Почему бы просто не попробовать что-то подобное?

#!/usr/bin/env php
<?php

[Your code here.
 Perhaps even send e-mail updates 
 including with the status of your script,
 or update a lightweight database each time
 the script has run.]

Простое сохранение этого скрипта как /path/to/script.php и вызов php /path/to/script.php(или просто ./path/to/script.phpдобавление прав на выполнение к файлу с помощью chmod +x) в вашем crontab должно решить эту задачу и сэкономить вам массу накладных расходов Apache.

Связанный контент