MQ选型
吞吐量来说:Kafka>RabbitMQ>ActiveMQ
数据准确性:RabbitMQ>ActiveMQ>Kafka
ActiveMQ
历史悠久,与spring整合较好,实现了多种协议,但性能并不高,多用于中小型公司。
RabbitMQ
支持AMQP事务处理。数据一致性、稳定性、可靠性做的最好,使用最广,但性能并没有RocketMQ和Kafka高
RocketMQ
阿里开源的中间件,具有高吞吐量、高并发、适合大规模分布式系统应用的特点,经过双十一实战场景的多次检验。但由于它是阿里内部从实战到开源的产物,里面有很多接口和API并不是那么直接的普遍被众多项目适用,相比Kafka甚至性能更优,但社区并没有前几个大。
除此之外,RocketMQ的分布式事务功能需要收费,并不是所有功能都免费~
Kafka
Kafka设计的初衷是处理日志,性能上比RabbitMQq强,能扛大数据、高并发,但准确性差没有RabbitMQ强,广泛应用在大数据领域