摘要:原文來自問題在中,如果我們想使用定時(shí)任務(wù)的話,對(duì)應(yīng)我們開發(fā)人員來說非常簡單,只需要參照官網(wǎng)的定時(shí)任務(wù)文檔基本就可以實(shí)現(xiàn)了??偨Y(jié)以上就簡單實(shí)現(xiàn)了執(zhí)行用戶自定義定時(shí)任務(wù)的需求。
問題原文來自 https://www.codecasts.com/blo...
在 Laravel 中,如果我們想使用定時(shí)任務(wù)的話,對(duì)應(yīng)我們開發(fā)人員來說非常簡單,只需要參照官網(wǎng)的定時(shí)任務(wù)文檔基本就可以實(shí)現(xiàn)了。
解決方案然而如果我們是在開發(fā)一個(gè)運(yùn)維類似的 Sass 應(yīng)用的時(shí)候,我們?nèi)绾螌?shí)現(xiàn)用戶可以自定義定時(shí)任務(wù),然后再在我們的應(yīng)用中執(zhí)行?
其實(shí)解決方案可以非常的簡單:在 app/Console/Kernel.php 文件里面,加上類似下面的一小段代碼:
if (Schema::hasTable("tasks")) { $tasks = Task::all(); foreach ($tasks as $task) { $schedule->call(function() use ($task) { // 主要這里,在記錄用戶的定時(shí)任務(wù)的時(shí)候 // 我們一定要記錄定時(shí)任務(wù)的執(zhí)行頻次 })->cron($task->frequency); }
上面的代碼其實(shí)很簡單,但是對(duì)于前文提到的應(yīng)用場景其實(shí)很有效果,當(dāng)然,你也是可以在這里結(jié)合 Laravel 的任務(wù)調(diào)度來完成的。
總結(jié)以上就簡單實(shí)現(xiàn)了執(zhí)行用戶自定義定時(shí)任務(wù)的需求。你有更好的方案可分享的時(shí)候,勞煩在評(píng)論處告知。
關(guān)注 codecasts 公眾號(hào),即可領(lǐng)取 100元 雙十一優(yōu)惠券,更有機(jī)會(huì)免費(fèi)領(lǐng)會(huì)員!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/26034.html
摘要:對(duì)于定時(shí)任務(wù)的基本用法,官網(wǎng)文檔已經(jīng)描述得很詳細(xì)了,這里不再多說。這種情況下如果定時(shí)任務(wù)能夠并行執(zhí)行,就不會(huì)有這樣的問題。這個(gè)時(shí)候我們希望能夠像隊(duì)列那樣,將定時(shí)任務(wù)分散到多臺(tái)服務(wù)器上。 定時(shí)任務(wù) Scheduled Tasks 是 Laravel 提供的組件之一,稍微上點(diǎn)規(guī)模的項(xiàng)目應(yīng)該都會(huì)用到,比如開發(fā)微信應(yīng)用時(shí)通過定時(shí)任務(wù)去刷新access token,比如每天定時(shí)發(fā)推送提現(xiàn)用戶要記...
摘要:高性能高精度定時(shí)服務(wù),輕松管理千萬級(jí)定時(shí)任務(wù)。支持任務(wù)到期觸發(fā)和。支持創(chuàng)建延時(shí)任務(wù)和定時(shí)到期任務(wù),和原生保持相同接口,輕松使用。不支持任務(wù)輸出任務(wù)鉤子及維護(hù)模式。是不指定任務(wù)名時(shí)自動(dòng)生成,每個(gè)任務(wù)名必須唯一,相同任務(wù)名重復(fù)定義將會(huì)自動(dòng)覆蓋。 Forsun高性能高精度定時(shí)服務(wù),輕松管理千萬級(jí)定時(shí)任務(wù)。 定時(shí)服務(wù)項(xiàng)目地址:https://github.com/snower/forsun l...
摘要:導(dǎo)語之前寫過使用的進(jìn)行定時(shí)任務(wù),實(shí)際上也可以執(zhí)行定時(shí)任務(wù)。需求是統(tǒng)計(jì)每日訪問的數(shù),雖然數(shù)據(jù)表中有數(shù)據(jù),為了演示,新建監(jiān)聽器統(tǒng)計(jì)。記錄這篇文章中介紹了實(shí)現(xiàn)了事件監(jiān)聽器,在此基礎(chǔ)上進(jìn)行擴(kuò)展。 導(dǎo)語 之前寫過使用 Linux 的進(jìn)行定時(shí)任務(wù),實(shí)際上 laravel 也可以執(zhí)行定時(shí)任務(wù)。需求是統(tǒng)計(jì)每日訪問的 IP 數(shù),雖然數(shù)據(jù)表中有數(shù)據(jù),為了演示,新建監(jiān)聽器統(tǒng)計(jì)。 記錄 IP 這篇文章中介紹了...
摘要:項(xiàng)目概述糖果盒子是采用開發(fā)的站點(diǎn)導(dǎo)航應(yīng)用,專注分享優(yōu)質(zhì)開發(fā)資源站點(diǎn),希望成為開發(fā)人員最喜愛的的書簽導(dǎo)航。線上地址糖果盒子開發(fā)者的書簽導(dǎo)航地址求環(huán)境要求部署安裝本項(xiàng)目代碼使用框架開發(fā),本地開發(fā)環(huán)境使用。 showImg(https://segmentfault.com/img/remote/1460000012018405?w=3346&h=1950);showImg(https://s...
閱讀 3361·2021-11-25 09:43
閱讀 3153·2021-10-11 10:58
閱讀 2757·2021-09-27 13:59
閱讀 3088·2021-09-24 09:55
閱讀 2180·2019-08-30 15:52
閱讀 1840·2019-08-30 14:03
閱讀 2267·2019-08-30 11:11
閱讀 2033·2019-08-28 18:12