Нужно запускать php скрипт по cron каждые 5 секунд как это сделать ?
запуск cron каждую секунду
запуск cron каждую секунду
16.03.2016 16:34:17
|
|
|
16.03.2016 17:59:00
К сожалению крон может запускать крипт с минимальным интервалом разв минуту (*/1 * * * *)
Вот решения исходя из выше сказанного используя крон: 1. можно так как-то (тут раз в 15 сек) */1 * * * * /home/mybin/script.sh; /bin/sleep 15; /home/mybin/script.sh; /bin/sleep 15; /home/mybin/script.sh; /bin/sleep 15; /home/mybin/script.sh 2. Через SH скрипт, т.е запускаем скрипт а внутри уже запускаем сколько нам над (тут приведен вечный цикл, такчто в крон скрипт ставить не надо): #!/bin/sh echo "Начинаем..." while (true) do echo "Ваш скрипт"; sleep 5; # пауза 5 секунд done; 3. Также системное решение но не крон: watch --interval=5 /var/filter.sh > /dev/null 4. Еще очередной костыль на эту тему: #!/bin/bash while :; do sleep 5; flock -n /tmp/lock1 -c /var/script.sh & done Но на мой взгляд это костыль и продуктивниее по крону запускать скрипт раз вминуту а внтри скрипта на пхп уже резать на время по 5 сек. One approach is this: set_time_limit(60); for ($i = 0; $i < 59; ++$i) { doMyThings(); sleep(1); } The only thing you'd probably have to watch out for is the running time of your doMyThings() functions. Even if that's a fraction of a second, then over 60 iterations, that could add up to cause some problems. If you're running PHP >= 5.1 (or >= 5.3 on Windows) then you could use time_sleep_until() $start = microtime(true); set_time_limit(60); for ($i = 0; $i < 59; ++$i) { doMyThings(); time_sleep_until($start + $i + 1); } |
|
|
30.01.2020 21:23:28
Рекомендую прочитать статью
|
||||
|
||||
Форма ответов