话说用 Golang 跑「队列工作」须要几步?应用 Goravel ,四步不能再多了!

第一步:生成工作类

go run . artisan make:job HelloWorld

工作类构造

package jobstype 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 mainimport (  "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 开发者疾速构建本人的利用。

我的项目地址:https://github.com/goravel/goravel

文档地址:www.goravel.dev