PDA

Просмотр полной версии : Возможно ли запускать php через определенный интервал


fduch
15.04.2013, 22:56
сабж. Тоесть суть задачи.... При запущенном клиенте пхп запускаем по часам. Но если нет запущенного клиента, можно ли как то организовать авто запуск на сервере. Сервак не локальный.

Sync
16.04.2013, 00:21
может cron?

Korchy
16.04.2013, 09:37
Самое простое решение - cron, как уже сказали. Если нужен запуск с частотой больше раза в минуту, на рнр вполне можно написать простенького демона, который будет крутиться на сервере и вызывать нужный скрипт с любым нужным интервалом.

fduch
16.04.2013, 20:49
Cron это планиравшик, который надо запустить гдето. Мне нужен вариант, чтобы сервер обрабатывал, без вмешательства из вне.
А где почитать про "написать демона на пхп". мне нужно исполнение рас в час.

iflamberg
16.04.2013, 21:11
Если есть доступ к запуску демонов, значит можете прописать крон. Не морочьте голову, пропишите скрипт в крон.
Демон на пхп - извращение.

fduch
17.04.2013, 00:16
Если есть доступ к запуску демонов, значит можете прописать крон. Не морочьте голову, пропишите скрипт в крон.
Демон на пхп - извращение.

У меня нет доступа, я сижу на фришном хостинге с халявными пхп и мускл.
Поэтому мне бы всеже поизвращаться...

Добавлено через 6 минут
Все вопрос снят. спасибо всем.

caseyryan
17.04.2013, 09:20
Все вопрос снят.
По какой причине?

fduch
19.04.2013, 20:19
Я написал процедурку, которая стартует при запуске клиента и вычисляет сколько дней/часов прошло с момента последнего запуска и в цикле запускает функцию нужное колво рас.
Костыль?

MikroAcse
19.04.2013, 20:22
Я написал процедурку, которая стартует при запуске клиента и вычисляет сколько дней/часов прошло с момента последнего запуска и в цикле запускает функцию нужное колво рас.
Костыль?
Если он не заходил несколько лет - да :)

caseyryan
20.04.2013, 00:17
Если он не заходил несколько лет - да
Как бы да, но можно ведь ограничить максимальное время отсутствия, скажем, месяцем.

if ($time_passed > MONTH) {
$time_passed = MONTH;
}

Ну или что-то типа того

А вообще, наверняка ведь можно обойтись и без цикла. Смотря что расчитывается.

mikhailk
20.04.2013, 18:14
А вообще, наверняка ведь можно обойтись и без цикла. Смотря что расчитывается.

Это да.

Сорри за офф, но видел однажды, как геймдиз в диздоке указал, что здоровье у перса должно увеличиваться на какую-то величину каждые десять секунд. Видимо, программеры в свое время объяснили, что они каждые десять секунд запускают скрипт, который всем пользователям в базе начисляет здоровье. :)

Думаю, под эту задачу еще и увеличение мощностей выпросили. Шутка ли, пробежаться по миллиону-другому пользователей и каждому начислить здоровье...