laravel 定時任務秒級執行方法

 

一、直接將循環寫到php代碼裏,再將 * * * * * php artisan schedule:run >> /dev/null 2>&1  寫進crontab -e
for ($i=1;$i<=20;$i++){
     $users = $this->user->getUserIDs();
     foreach ($users as $user){ 
           $job = (new TradeJob($user->id));
           dispatch($job);
     }
     sleep(3);
}


二、通過shell腳本
/var/www/html/test.sh

#!/bin/bash
step=1 #間隔的秒數

for (( i = 0; i < 60; i=(i+step) )); do
 /usr/local/php/bin/php /home/www/blog/artisan schedule:run
 sleep $step
done

exit 0


crontab -e 編寫 執行 第一步寫的 test.sh 腳本

* * * * * /var/www/html/test.sh


四、也可以將crontab -e 裏面的任務計劃寫到一個test.txt文件裏,然後 crontab  test.txt也可以。
參考:https://www.cnblogs.com/lamp01/p/6864258.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章