Mq选型总结

本文对比分析了ActiveMQ、RabbitMQ、RocketMQ和Kafka的特性与适用场景。ActiveMQ适合简单场景,但可能丢消息;RabbitMQ吞吐量万级,社区活跃,但Erlang定制开发难度大;RocketMQ单机吞吐量上十万,可靠性高,适合大型公司;Kafka适用于大数据、实时计算,提供高可用性和低延迟,但Topic过多会影响吞吐量。MQ的主要作用包括解耦、提高响应速度和削峰填谷,但也可能导致系统可用性和复杂性降低。
摘要由CSDN通过智能技术生成

activemq

Java开发的,在内嵌到项目中比较方便

单机吞吐量万级

可以做主从、高可用

 

可能丢消息

官方维护已经很少

 

Rabbitmq(非分布式)(支持消息的事务)

在rabbitmq中创建几万的topic是很容易的,所以可以做到每个硬件订阅不同的topic

而kafka的topic在分布式情况下需要同步到其他broker,还需要经过zookeeper

 

rabbitmq可以通过java程序中调用declareExchange、declareQueue、declareQueue来实现mq的创建

 

吞吐量到万级,单机几万

Erlang开发,延时很低

有管理界面,适合中小企业管理

社区活跃

国内公司用的多

但,erlang定制开发难度大

 

在普通集群模式(不是高可用的),元数据是多份的,但是queue数据只有一份,

优点:可以提高吞吐量

缺点:

1、内部大量数据传输

2、只有一份数据,可靠性是没有保证的

 

镜像集群模式(是高可用的),每个节点都有完整的一份数据

不是分布式的,一个节点上有一份完整的数据,容量达到该机器的容量无法容纳,就挂掉了

 

Rabbitmq保证数据不丢的方案

生产者confirm模式:开启发送方确认模式

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值