1. 程式人生 > >crontab,精確到秒的定時任務

crontab,精確到秒的定時任務

don url cond cron nta task pat data /usr

關於crontab 定時任務命令的詳細解釋,可以看這邊文章,http://www.cnblogs.com/longjshz/p/5779215.html。

我在實際工作中碰到一個問題,為了提高用戶體驗,需要每隔10秒鐘去執行一個php任務。

正常的crontab定時任務,只有分鐘,小時,天,月,周,沒有到秒,以下提供兩個解決方案,一個是我實際中使用的,一個是我後來優化過好的。

方案一,簡單粗暴,在crontab中直接利用sleep命令,間隔時間為10秒,直接跑

* * * * * /usr/bin/curl "your url" >> /home/wwwroot/default/test.txt * * * * * sleep 10; /usr/bin/curl "your url">> /home/wwwroot/default/test.txt * * * * * sleep 20; /usr/bin/curl "your url" >> /home/wwwroot/default/test.txt * * * * * sleep 30; /usr/bin/curl "your url" >> /home/wwwroot/default/test.txt * * * * * sleep 40; /usr/bin/curl "your url">> /home/wwwroot/default/test.txt * * * * * sleep 50; /usr/bin/curl "your url" >> /home/wwwroot/default/test.txt 方案二,另寫一個腳本,在crontba中,每分鐘去跑一次,這個腳本中寫一個循環,讓它跑 #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/local/bin:/usr/sbin step=10 #間隔的秒數,不能大於60 for (( i = 0; i < 60; i=(i+step) )); do /alidata/server/php/bin/php -f /data/public_html/sms/cron/tasks_second.php sleep $step done exit 0 ~

crontab,精確到秒的定時任務