用 Golang 跑「佇列任務」,也可以像 Laravel 一樣簡單
話說用 Golang 跑「佇列任務」需要幾步?使用 Goravel ,四步不能再多了!
第一步:生成任務類
go run . artisan make:job HelloWorld
任務類結構
package jobs type HelloWorld struct { } //Signature The name and signature of the job. func (receiver *HelloWorld) Signature() string { return "process_podcast" } //Handle Execute the job. func (receiver *HelloWorld) Handle(args ...interface{}) error { return nil }
第二步:註冊任務
註冊到 app/provides/queue_service_provider.go
func (receiver *QueueServiceProvider) Jobs() []queue.Job { return []queue.Job{ &jobs.HelloWorld{}, } }
第三步:啟動佇列伺服器
在根目錄下 main.go
中啟動佇列伺服器
package main import ( "github.com/goravel/framework/support/facades" "goravel/bootstrap" ) func main() { // This bootstraps the framework and gets it ready for use. bootstrap.Boot() // Start queue server by facades.Queue. go facades.Queue.Worker(queue.Args{}).Run() select {} }
第四步:排程任務
err := facades.Queue.Job(&jobs.HelloWorld{}, []queue.Arg{}).Dispatch()
OK, Over. 更多功能詳見文件,基本用法與 Laravel 保持一致,小夥伴們開始愉快的搞事情吧!
關於 Goravel
Goravel 是一個功能完備、具有良好擴充套件能力的 Web 應用程式框架。 作為一個起始腳手架幫助 Golang 開發者快速構建自己的應用。
專案地址: http://github.com/goravel/goravel
文件地址: www.goravel.dev
「其他文章」
- 優維低程式碼:Route Alias 路由別名和Segues 頁面切換
- Go語言愛好者週刊:第 161 期
- 手寫程式語言-實現運算子過載
- Go語言愛好者週刊:第 160 期 — 竟然這麼多人不理解 map 的 make 含義
- 低程式碼實戰 | 1分鐘,從0到1建立一個簡單的微應用
- 優維低程式碼:Pipes 管道
- 【1-2 Golang】Go語言快速入門—陣列與切片
- 里程碑!用自己的程式語言實現了一個網站
- 【1-1 Golang】Go語言快速入門—基本語法
- Go語言愛好者週刊:第 159 期 — 這道題目有點意思
- 萬字長文告訴你Go 1.19中值得關注的幾個變化
- 9月更新!7個超好用的功能上線了!EasyOps®UI8.0更有大變動
- 碼住!Golang併發安全與引用傳遞總結
- Google雲基礎架構工程師:視覺隱喻的混沌工程和可觀察性
- 統一的可觀察性:指標、日誌和跟蹤
- 用位運算為你的程式加速
- 如何用Golang來手擼一個Blog - Milu.blog 開發總結
- 十七年運維老兵萬字長文講透優維低程式碼~
- 一文讀懂 Kubernetes的四種服務型別!
- 優維低程式碼:Use Resolves