架构之路

消息队列使用

2021-07-12  本文已影响0人  无玄

消息队列介绍

消息队列主要是为了就解决生产者和消费者之间的通信问题,生产者先将消息投递一个叫做「队列」的容器中,而消费者不断的从容器中取出消息,并进行消费。

消息队列适用场景

消息队列选型

常用的消息队列:ActiveMQ、RocketMQ、RabbitMQ、Kafka

特性 RabbitMQ RocketMQ kafka
开发语言 erlang java scala+java
单机吞吐量 万级 10万级 10万级
时效性 us级 ms级 ms级以内
可用性 高(主从) 非常高(分布式) 非常高(分布式)
消费模式 Pull+Push Pull+Push Pull
消息可靠性 基本不丢 经过参数优化配置,可以做到0丢失 经过参数优化配置,可以做到0丢失
功能特性 并发能力很强,性能极其好,延时很低,管理界面较丰富 MQ功能比较完备,扩展性佳 功能较为简单,支持主要的MQ功能

如果使用消息队列主要场景是处理在线业务,比如在交易系统中用消息队列传递订单,需要低延迟和高稳定性,可以使用RabbitMQ和RocketMQ。RocketMQ的社区活跃度,有稳定支持,如果中小型公司,技术实力较为一般,技术挑战不是特别高,用 RabbitMQ 是不错的选择;大型公司,基础架构研发实力较强,用 RocketMQ 是很好的选择。
如果是大数据领域的实时计算、日志采集等场景, Kafka 是业内标准,社区活跃度很高,何况几乎是全世界这个领域的事实性规范。

参考文档:

消息队列

上一篇下一篇

猜你喜欢

热点阅读