4.1 初识MQ
一、同步通信
优点:
时效性比较强,可以立即得到结果
缺点
耦合性高
性能下降
资源浪费
级联失败
二、异步通信
常见实现方式:事件驱动模式
优势
服务解耦
性能提升,吞吐量提高
服务没有强依赖,不必担心级联失败的问题,故障隔离
流量削峰
缺点
依赖于Broker的可靠性、安全性、吞吐能力
架构复杂了,业务没有明显的流程线,不好追踪管理
三、MQ常见框架
什么是MQ:
MessageQueue,中文是消息队列,字面看起来就是存放消息的队列,也就是事件驱动架构中的Broker
MQ分析:
RabbitMQActiveMQRocketMQKafka公司/社区
Rabbit
Apache
阿里
Apache
开发语言
Erlang
Java
Java
Scala&Java
协议支持
AMQP、XMPP、SMTP、STOMP
OpenWlre、STOMP、REST、XMPP、AMQP
自定义协议
自定义协议
可用性
高
一般
高
高
单机吞吐量
一般
差
高
非常高
消息延迟
微秒级
毫秒级
毫秒级
毫秒以内
消息可靠性
高
一般
高
一般
选择:中小型,吞吐量不大:RabbitMQ, 中大型:RockerMQ
最后更新于
这有帮助吗?