Cron. Время
Crontab в Панеле Управления должен быть настроен на работу, с максимальной частотой, которая разрешена на вашем хосте. В идеале, он должен каждую минуту пытаться запустить программу admin/cron.php, входящую в состав плагина.
Программа admin/cron.php может отказать Crontab-у, и не запуститься, если:
- программа уже работает
- среди всех пакетов заданий крон, нет ни одного, который должен быть запущен в данный час - время старта пакета не наступило.
Время старта пакета.
Настраивается в каждой форме поставщика индивидуально, во вкладке "Cron":
(пробелы не допускаются, символ * означает "каждый").
Пояснения к рисунку:
- старт пакета в любую минуту часа: с 5:00 до 5:59
- старт пакета в любую минуту часа: с 13:00 до 13:59
- старт пакета в любую минуту часа: с 19:00 до 19:59
- только в понедельник(1), среду(3) и пятницу(5)
- каждую неделю месяца.
Такие настройки предписывают пакету стартовать первый раз в понедельник, в 5:00, если предыдущий пакет закончил свою работу. Иначе, он может стартовать позже, в любую минуту от 5:00 до 5:59.
Время крона на сервере может не совпасть с временем вашего часового пояса, и может не совпасть с временем сервера:
Поэтому число в поле "GMT:" подбирается эмпирически.
Период.
Время старта пакета может быть обозначено символом * . Это означает, что пакет должен стартовать сразу после окончания работы предыдущего пакета. Таким образом, можно запустить работу всех пакетов по кругу, в порядке приоритета.
Но для того, чтобы все время не выполнялся только пакет с приоритетом 1 нужно установить период, в течение которого ни один пакет не сможет выполниться повторно.
По-умолчанию, в программе cron.php установлен период 240 минут, это значит, что каждый пакет сможет выполниться повторно не ранее, чем через 4 часа.
Т.е. мы взяли на себя смелость предположить, что все ваши задания успеют выполниться за 4 часа. Если мы ошиблись, поправьте нас в файле admin/cron.php в этом месте:
Величина периода не должна быть меньше суммарного времени работы всех пакетов.
Внимание.
Например, если период установлен на 4 часа, то такая настройка времени не имеет смысла:
т.к. если пакет стартует в 2 часа ночи, то следующий его старт возможен не ранее 6 часов утра.
P.S.
Часто при отладке используется запуск крона из строки браузера: site.com/admin/cron.php
Если вы не хотите ждать 4 часа, чтобы запустить пакет повторно, временно, установите период 1 минута.