golang 消息队列实现?
最近突然想用go新建个组件系统,解耦任务,现在有啥成熟 的消息队列推荐使用?
简单了解过:
nsq: 权限验证有问题, 谁都可以登? 队列内容不是顺序获取的?
如果自己写个? 基于数组或者redis, 可能功能不会太强, 只有简单的入队和出队, 最多再搞个超时, 跟失败次数?
主流的golang的队列处理是怎么实现的呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
用RabbitMQ吧。
RabbitMQ首选
其次可以关注这个列表: github go语言实现的消息队列
如果简单实现,基于redis就可以了,队列就用list,如果是topic-channel 就用pub/sub 代替,也挺方便的。看你对数据量的要求吧,如果没有,redis真的够。
如果要用数组,建议赶紧打住。。
不过也可以考虑其他Q,比如 RabbitMq kafka。
如果是原生go写的消息队列,也可以看看nats,如果对消息持久化有需求就看看nats-streaming。最近在用,感觉非常不错