怎样用go语言中使用分布式任务队列
布式任务队列是大型系统中经常用的技术方案,是一种高效、可靠性高,能够承受海量并发的技术方案。目前有个名为[machinery][1]的开源项目,用go语言开发了一个分布式任务框架。
工具/原料
能联网的linux或者mac电脑
快速体验
1、首先获取项目代码:go get github.com/RichardKnop/machinery/v1

4、启动worker:go run machinery.go worker

6、在worker端,可以看到收到的消息的情况,以及计算过程的日志

2、在server中注册task。每个task都是一个函数,task函数返回的最后一个耩撞苏粪参数必须是error,例如: func HelloWorld(arg string像粜杵泳) (string, error) { return "Hi, i'm worker@localhost", nil }

sender开发
1、发送端用来向worker发送任务。发送端也需要像worker一样创建server,在server注册task,需要与worker保持一致。

3、然后就可以获取task执行的结果。

2、然后启动sender,可以看到任务指定的结果:

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:60
阅读量:94
阅读量:71
阅读量:56
阅读量:63