主流 mq 是不是也就 rabbit 和 kafka 了,不过感觉 kafka 貌似集群场景多一点,单机不多吧,rabbit 是 Erlang 开发的,电脑又要安装 Erlang; beanstalk 轻量级队列,挺好用的,但是招聘网站几乎没有企业提到. 唉,对我这种爱给自己设定边界的人来说,真心累……
|
hronroMar 27, 2021 via iPhone
1
一般不需要再对 mq 做二次开发的话,用 docker 直接跑起来就行了吧,并不需要装 Erlang 环境
|
|
liche123Mar 27, 2021
2
rabbit + 1
|
|
srx1982Mar 27, 2021
3
我们用 rabbit 主要是因为有延迟队列,要不就用 kafka 了
|
|
halkMar 27, 2021
4
kafka 一般用来做大数据处理的,和 rabbit 定位不同
国内的 RocketMq 挺不错的 |
|
jzmwsMar 27, 2021
7
选 mq 关键看自己的场景, 没有好坏之说! 只有合适与否一言!
|
|
fyoooMar 27, 2021 via Android
8
考虑一下云端的?比如 SQS
|
|
BBCCBBMar 27, 2021
9
kafka 单机没有任何毛病!
无脑 kafka. 或者 pulsar. 我感觉 pulsar 比较好. 功能特性迭代比较快 |
|
simonlu9Mar 27, 2021
10
redis stream,比较轻快,缺点就是 pending 消息不好处理
|
|
halkMar 27, 2021
11
|
|
hantsyMar 27, 2021
12
RabbitMQ
|
|
dzdhMar 27, 2021
17
|
|
zyy314680012Mar 27, 2021
18
rabbitmq
|
|
19
怎么会把 rocket 看的那么低呢,无论是对于业务还是对于中文母语的人来说,非常好上手,性能也很棒。
|
|
privappsMar 27, 2021
21
墙内 不流行 用 docker 吗?
|
|
22
性能优先选 Kafka,有事务需求选 rabbitmq 。除非用 Spring Alibaba 那一套,否则不会考虑 rocketmq,http 协议才有多语言 sdk,生态差太多了
|
|
S2LineMar 27, 2021
23
Kafka+Redis 即可
|
|
liveejMar 27, 2021
24
nats 如何?很轻量,可以集群。配合 go 做了物联网消息的分发处理决定挺好用
|
|
25
redis stream+1
只要不是高负载大流量,redis 多香,可以减少一个架构中的组件 |
|
linnanaMar 27, 2021
26
看完评论我觉得不少人对 RocketMQ 有很多误解。
选型的时候不要过度高估自己对陌生技术的理解不了解 Erlang 是学不到 rabbit 的精髓的,学习 MQ 不要只学搭个环境调个接口,对不同架构意图和 MQ 的公共实现原理做深入了解才是关键。 如果你读过 Kafaka 和 RocketMQ 的源码,就明白 RocketMQ 某种程度上就是 Kafka 的子实现,只是两者的技术实现手段不同,甚至我个人认为如果只是从消息队列来看 RocketMQ 的实现是要优于 Kafka 的。 |
|
fox0001Mar 27, 2021 via Android
28
最近也在考虑 MQ,本来选 RabbitMQ,但是老项目用 Spring3,不能直接用 Spring AMQP 。可能会考虑 Apache ActiveMQ Artemis 。迷惘 ing…
|
|
GG668v26Fd55CP5WMar 27, 2021 via iPhone
29
beanstalk 我也觉得挺好用的,好奇为什么国内没什么公司用
|
|
leafreMar 27, 2021
30
rocketmq 用的比较多
|
|
xuanbgMar 27, 2021
31
事务型:Rabbit
流量型:Kafaka |
|
wangyanruiMar 27, 2021 via iPhone
32
楼上加 1,另外如果小项目直接 redis 也可以,尽量能少一个依赖项就少一个
|
|
ilylx2008Mar 27, 2021
33
|
|
jimmyismagicMar 27, 2021
34
以前用 rabbit,现在用 kafka,不过经常有人喷 kafka 就只是做日志的
|
|
mywaitingMar 27, 2021 via iPhone
35
我说用 postgres 做的队列会被喷死么?
|
|
maemualMar 27, 2021
36
@falcon05 #29 知乎有在用,用了好多年了。但是大流量下,性能实在是不行。为了给老项目减少迁移成本,搞了一个 beanstalk on puslar,降低迁移成本,提升性能。
|
|
janxinMar 27, 2021
37
需求都没有我直接推荐 https://en.wikipedia.org/wiki/Message_queue
|
|
NUTMar 27, 2021
38
我们在用 RMQ 商业版,感觉没啥大问题。
我读过 RMQ 的源码,感觉代码挺不错的。其实大吞吐就是硬盘的 mmap 玩法。其实都差不多。 我们是 java 团队,用了挺久的 RMQ. |
|
TypeErrorMar 27, 2021 via Android
39
只用主流和支持多语言的
低吞吐,部署简单的,用 rabbitmq,装个 erlang 而已,有什么麻烦的 大流量大吞吐的,用 kafka |
|
guanhui07Mar 27, 2021 via Android
41
Rabbitmq
|
|
waisingMar 27, 2021 via iPhone
42
公司和个人都是 pulsar
|
|
k9982874Mar 27, 2021 via iPhone
43
我们用的 nsq,目前足够用。
如果项目再上一个量级就要考虑迁移到 kafka 。 |
|
44
两者碰巧在工作中都用过,说的错漏之处,还请指正。
* RabbitMQ 是基于 ERlang 的 Socket Queue 封装。即使是跨互联网传输,单机可轻松支持上万连接。一对一,多对多,RPC,广播都支持。RabbitMQ 使用二进制直接传输你发送的内容,client 本身并不支持诸如加密,压缩。需要发送和接收端自己完成。支持集群和证书加密,但是前者压测性能损失很大,据说在最新的几个版本中有相当优化。 * Kafka 在我的理解,其实更像一个日志系统。broker 发送过来的信息,按分组等相关设置进行记录并根据设置定时或定量丢弃。Consumer 按 group-id 进行读取。Kafka Client 本身即支持多种压缩算法,连接时修改设置即可。Kafka 消息读取会受 group-id 及分区设置影响。如果用于任务分发队列,RabbitMQ 与 Kafka 的行为很多地方会有差异,在具体的使用场景时需要注意。 浅见,错漏之处,恳请指正。 |
|
overwatchMar 28, 2021
46
我司使用的是 Beanstalkd,优点是轻量级,上手简单。缺点也很明显,不支持集群
不过我还是比较推荐 Beanstalkd 的,性能非常出色 |
|
sampengMar 28, 2021 via iPhone
47
业务量不大,只是要一个稳定不出问题的消息队列。rabitmq 最少这个选择不会错。因为太成熟了。
|
|
securityCodingMar 28, 2021
48
rocketmq 和 kafka 用的比较多,很多时候根本没有选型的机会啊,更多的是有什么用什么
|
|
49
公司 rabbitmq 集群稍微堆点消息就蹦了,扛不住,后来上了阿里云 amqp ; rocketmq 也在用,底层更像 kafka,使用起来更像 rabbitmq
|
|
waytodelayMar 28, 2021
51
用 kafka 怎么解决事务问题呢?
|
|
xiangbudaomingziMar 29, 2021
53
@wangyanrui 不建议 redis 业务稍微上来点就要重构
|
|
wangyanruiMar 29, 2021 via iPhone
54
@xiangbudaomingzi 回答里面带前提了,小项目
|
|
doublleftMar 29, 2021
55
确实 redis 足以,或者 zmq
|
|
xiangbudaomingziMar 29, 2021
56
@wangyanrui 除非自己玩的项目
|
|
57
两个前互联网中型公司业务上用的都是 rocketmq,好用的很。。
|
|
wangyanruiMar 29, 2021
58
|
|
59
都什么年代了, 还 rocketmq 不支持多语言客户端,
https://github.com/search?q=org%3Aapache+rocketmq-client |
|
MeteorCatMar 29, 2021 via Android
61
我也推荐 redis,减少其他引入
|
|
d119Sep 7, 2023
62
redis 很好用啊
|
|
harrykobeApr 22, 2024
63
这两个星期,系统从 rocketmq 4 升级到 rocketmq 5 ,出现丢消息,有好一部分消息没有被正常消费,用的是阿里云的提供的版本,经过这次,我不怎么相信阿里的 rocketmq 的产品了
|