запуск задачи php каждые 24 часа


У меня есть некоторые функции, которые используют curl для извлечения информации с нескольких сайтов и вставки их в мою базу данных. Мне просто интересно, как лучше всего выполнять эту задачу каждые 24 часа?

Сейчас я отключаюсь от Windows, но, вероятно, переключусь на linux, как только буду жить (если это имеет значение). Сейчас я работаю в рамках symfomy.

Я слышал, что закадычные друзья могут это сделать... но, глядя на сайт, кажется, что он работает удаленно, и я бы предпочел просто держите вещи в доме...Могу ли я просто "запустить службу" на своем компьютере? что бы это ни значило;) (слышал, как это используется)

Спасибо за любую помощь, Эндрю

Author: dreftymac, 2009-02-03

4 answers

Это именно то, для чего Cron (linux) или Запланированные задачи (windows).

Вы можете запустить их на своем сервере приложений, чтобы все было в одном месте.

Например, у меня на домашнем сервере запущен cron для ежедневного резервного копирования баз данных MySQL. В этом процессе задействована только одна система.

 17
Author: Michael Haren, 2009-02-03 16:59:42

Добавление 0 0 * * * php /path/to/your/cronjob.php в ваш crontab должно выполнить это.

 7
Author: barfoon, 2011-08-16 01:29:17

Вы можете установить запланированную задачу в cron (или запланированную задачу в Windows). Самый простой способ - создать сценарий оболочки (пакетный сценарий в Windows), который выполняет php-скрипт из командной строки (благодаря этому вам не нужно использовать ресурсы www-сервера). Конечно, вы выполняете сценарий на целевой машине.

 1
Author: empi, 2009-02-03 17:03:36

Если для чего бы вы ни решили, что cron или планировщик Windows не подходят, я иногда нахожу удобным написать быстрое приложение Java, которое делает то же самое:

Вы можете использовать вызовы System.getRuntime().exec("cmd line stuff here");. Затем вы можете исказить эту операцию в TimerTask. Наконец, вы запускаете объект Timer, добавляя временные задачи и указывая время и частоту и т.д...

Это явно сложнее, чем вышеупомянутые примеры, однако мне это нравится, потому что вы можете добавить некоторые интеллектуальная обработка ошибок и отправка предупреждений по электронной почте или тому подобное, когда что-то не так.

Вероятно, излишне, но, возможно, стоит посмотреть, если вам когда-нибудь придется иметь дело с несколькими такими операциями.

Суини

 0
Author: Brian Sweeney, 2009-02-03 17:20:30