I have python script which I need to run with diffrent frequency within a specified time frame. I tried to do this through crontab but I do not know how to bite it :/
My time intervals and frequencies look like this (i have it more than 200):
с 06:00:00 до 15.11.2015 по 07:00:00 каждые 5 минут
с 06:20:00 14.11.2015 по 06:32:00 14.11.2015 каждые 30 секунд
с 18:00:00 14.11.2015 по 14.11.2015 19:10:00 каждые 5 минут
с 14.11.2015 11:00:00 до 15.11.2015 11:00:00 каждые 10 мин
с 16.11.2015 12:00:00 до 16.12.2015 12:00:00 каждые 15 минут
Я работаю на VPS Linux с CentOS 6 64bit
Этот интервал и частота я сохранил в MySQL
How can I do this in most efficient way?
Во-первых, минимальная частота cron составляет 1 минуту. Итак, чтобы получить частоту 30 секунд, вам понадобится сценарий-оболочка, который запускает вашу работу дважды.
Поскольку вы уже пишете сценарий оболочки, я бы просто заставил его запускаться каждую минуту и позволить сценарию решать, действительно ли он выполняет задание или просто завершает работу, ничего не делая. Вы можете написать сценарий на Python или другом языке сценариев и извлечь данные из своей базы данных, хотя, если эти данные не будут меняться, я бы жестко закодировал временные диапазоны в сценарии, чтобы устранить сложность.