Можно ли сделать 2 крона на одном сайте?

Главные вкладки

Аватар пользователя AnNik AnNik 27 мая 2010 в 7:48

Хотелось бы, чтобы какие-то функции выполнялись по крону, скажем, каждый час, а какие-то - раз в сутки.
Такое возможно реализовать?
Соорудить в рамках Друпала какой-нибудь cron2.php и навесить на него некоторые hook_cron2?

Комментарии

Аватар пользователя AnNik AnNik 27 мая 2010 в 15:21

"adubovskoy" wrote:
Возьмите нормальный хостинг с кроном)

Эх, господа, господа...
Есть не только хостинг, есть нормальный дедик... сабж-то совсем не в этом!
Как запустить крон, я прекрасно знаю, и как программировать hook_cron - тоже...
Позволю процитировать сам себя:
Quote:
Можно ли сделать 2 крона на одном сайте?
чтобы какие-то функции выполнялись по крону, скажем, каждый час, а какие-то - раз в сутки.

ладно, попробую выразиться еще яснее...
Сейчас крон работает, запускается раз в час, все замечательно.
Есть парочка самописных модулей, в которых тоже надо бы добавить hook_cron, но!!! чтобы эти hook_cron этих модулей выполнялись бы не каждый час, а раз в сутки. При этом надо, чтобы тот крон, который работает раз в час, так и продолжал бы работать.
Вопрос не в том, как настроить запуск двух кронов на сервере, с этим проблем нет:)
Вопрос в том, есть ли варианты запрограммировать (настроить) разные hook_cron в разных модулях так, чтобы они вызывались не все враз, через один и тот же запуск cron.php, а по отдельности... чтобы в один запуск крона отрабатывал бы хук mymodule1_cron, а в другой запуск крона - хук mymodule2_cron.
Понятно, что можно внутри hook_cron наворотить какие-то собственные семафоры, которые будут управлять всем этим хозяйством... но может есть варианты решения средствами самой CMS?

Аватар пользователя rbogdan@drupal.org rbogdan@drupal.org 27 мая 2010 в 16:14

Напишите модуль который будет управлять всеми запусками hook_cron с настройкой запуска для каждого хука. Многие будут вам благодарны, особенно я)

Аватар пользователя adubovskoy adubovskoy 27 мая 2010 в 19:09

"AnNik" wrote:
Как запустить крон, я прекрасно знаю, и как программировать hook_cron - тоже...
Позволю процитировать сам себя:

"AnNik" wrote:
Понятно, что можно внутри hook_cron наворотить какие-то собственные семафоры, которые будут управлять всем этим хозяйством... но может есть варианты решения средствами самой CMS?

Простите, недопонял сначала) Задачка интересная. Простой и неправильный способ - сторонний php файлик, который делает нужные вам операции (базу там правит или еще что). А вот какой правильный - хз, напишите пожалуйста если увидите, я с такой задачкой не сталкивался, интересно решение.