@amdma

Как поставить setinteval на месяц?

Как поставить setinteval на месяц?
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
В общем случае такие задачи не стоит даже в кроне выполнять. Обьясню на примере.
Есть задача ежедневного списания баланса. Она должна быть выполнена 1 раз в день примерно в 1:00 по москве.
Представим что сервер заглох именно в 1:00 по москве, значит списания не будет и клиенты получат 1 день халявы, ну или сервер перезагружался 5 раз и с них спишется 5 раз за день.

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

Войдите, чтобы написать ответ

Похожие вопросы