您好,登錄后才能下訂單哦!
最近一個項目需要在服務器上每隔1分鐘執行一次控制器的方法,從網上找了一下可以用計劃任務來執行,自己也走了不少彎路,linux稍微簡單一下,因為測試服務器是linux,客戶用的是windows server 2016,所以正好兩種方式都用到了。
簡單說明一下我的需求,我需要服務器定時來執行一個網址即可,因為我在控制器中寫好了方法,整個網址用的tp框架,所以很多網上寫的代碼可以模仿,但不能直接拿來用。
1、linux
crond 是linux用來定期執行程序的命令,具體的使用方法可以百度或者查看其它詳細的文檔,這里不做詳細說明,只說明如何通過crond來做一個定時任務。
有2中方法添加任務:
1.在命令行輸入: crontab -e 然后添加相應的任務,wq存盤退出。
2.直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務。
如:
* * * * * sleep 1; /usr/bin/curl http://www.sxfewwa.com/Home/JPush/autoConfirm
每隔一分鐘 用curl 方式執行一次 這個鏈接
分 小時 日 月 星期 命令
0-59 0-23 1-31 1-12 0-6 command (取值范圍,0表示周日一般一行對應一個任務)
2、windows server
第一步,編寫好自己的方法,php文件,測試的話可以用 test.php 代碼如下:
<?
$fp = fopen("test.txt", "a+");
fwrite($fp, date("Y-m-d H:i:s") . " 成功成功了!\n");
fclose($fp);
?>
如果是用的thinkphp,和我一樣的話,Controller 中的方法和其他一樣,當然可以添加一個
function test(){
$fp = fopen("test.txt", "a+");
fwrite($fp, date("Y-m-d H:i:s") . " 成功成功了!\n");
fclose($fp);
}
第二步:寫bat文件
set link=http://www.sxfewwa.com/Home/JPush/autoConfirm
Start iexplore "%link%"
Ping -n 80 127.1>nul
Taskkill /f /im "iexplore.exe"
3、windows 稍微麻煩一些,需要在管理工具->計劃任務,中創建一個任務
過程可以查看(http://blog.csdn.net/woshixuye/article/details/18050769)網上也有很多類似的文章。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。