Запуск задачи в Cron чаще, чем раз в минуту
Для тех, кто еще не знает, что такое Cron, поясню. Это планировщик заданий, который позволяет выполнять указанные вами действия в заданные промежутки времени.
Более детально настройку Cron для различных типов задач я рассмотрю в отдельной статье, в этой же – расскажу, как запустить вашу задачу чаще, чем раз в минуту.
По умолчанию в Cron минимальным значением интервала времени служит 1 минута. Когда я разрабатывал своего бота для «ВКонтакте», мне этого было не достаточно, и задача состояла в том, чтобы скрипт выполнялся каждые 15 секунд.
Поискав информацию в Интернете, я набрел на инструкции, где описывались различные циклы, условия – все это мне не помогло и лишь перегружало мой сервер.
Но задача так и осталась не решенной, пока я не придумал следующее.
Я запускал одновременно несколько одинаковых задач и каждой задавал свою, так сказать, паузу перед основным запуском.
Пример задачи без паузы:
wget -O /dev/null -q "https://www.pandoge.com/script.php"
А это уже с паузой:
sleep 25; wget -O /dev/null -q "https://www.pandoge.com/script.php"
sleep 50; wget -O /dev/null -q "https://www.pandoge.com/script.php"
Как видно из примера, во втором случае добавлено «sleep 25;» и «sleep 50;» – то есть запуск скрипта начинается через 25 и 50 секунд соответственно.
Возможно это не самое лучшее решение, но вполне рабочее.