下面由workerman教程欄目給大家介紹基于workerman庫(kù)實(shí)現(xiàn)的秒級(jí)定時(shí)任務(wù)工具的方法,希望對(duì)需要的朋友有所幫助!
對(duì)于php開發(fā)人員,想必已經(jīng)受夠了在linux系統(tǒng)上配置各種定時(shí)任務(wù),我自己也是不勝其煩。so,最近寫了個(gè)秒級(jí)的定時(shí)任務(wù)工具,下面是一些簡(jiǎn)介。
GitHub源碼地址(https://github.com/2lovecode/cron-job)
秒級(jí)定時(shí)任務(wù)工具,基于workerman庫(kù)
以往我們實(shí)現(xiàn)定時(shí)任務(wù)主要依靠在服務(wù)器端配置crontab,但這種做法有幾個(gè)弊端
1) crontab只支持分鐘級(jí)別,如果要實(shí)現(xiàn)秒級(jí)別的任務(wù)就必須寫shell腳本實(shí)現(xiàn)。
2) 如果代碼部署上線后,需要更改或者添加新的定時(shí)任務(wù),就必須登陸到服務(wù)器進(jìn)行手動(dòng)更改,耗時(shí)耗力且易出錯(cuò)。
cron-job解決了主要的問(wèn)題
1) 通過(guò)使用秒級(jí)定時(shí)器(定時(shí)器具體實(shí)現(xiàn)因安裝的擴(kuò)展不同而有性能差異,但對(duì)我們的功能不影響),實(shí)現(xiàn)了秒級(jí)別的定時(shí)任務(wù)。
2) 定時(shí)任務(wù)的配置可以在配置文件中更改,在代碼部署上線后,只要reload定時(shí)任務(wù)服務(wù)就可以,而且reload提供的是平滑重啟,不影響正在執(zhí)行的任務(wù)。
3) 支持定時(shí)任務(wù)分發(fā)器和定時(shí)任務(wù)執(zhí)行器部署到不同的服務(wù)器。
使用示例
1.使用composer安裝
在composer.json文件中的require下添加:
“require” : { “2lovecode/cron-job”: “dev-master” }
執(zhí)行composer install或composer update即可
2.test.php