特点
可靠性:持久化,传输确认,发布确认
灵活的路由
消息集群
高可用
多种协议
多语言客户端
管理界面
跟踪机制
架构
Message(消息):包括消息头和消息体。消息体是不透明的,消息头是由一些可选属性组成的,我们可以进行选择,比如routing-key(路由键),priority(优先级),delivery-mode(是否持久化存储)。
Publisher(消息的生产者)
Exchange(交换器)
Binding(绑定):使用路由键将交换器和队列进行绑定。
Queue(消息队列):
Connection(网络连接):如TCP连接。
Channel(信道):对于操作系统来说,建立和销毁TCP都是非常昂贵的开销,所以使用信道来复用一条TCP连接。
Consumer(消息的消费者)
Virtual Host(虚拟主机)
Broker(消息队列服务器实体)
Exchange(交换器)类型
Direct:消息中的路由键(routing-key)如果和Binding中的(binding key)一致,交换器就把消息发送到对应的队列中。(一个路由键匹配到一个队列)(完全匹配,单播)。
Fanout:消息会发到所有与这个交换器绑定的队列上。(速度最快)
Topic:将路由键(routing-key)和Binding中的(binding key)进行模式匹配(类似于模糊查询),不同的队列绑定不同的模式。(一个路由键可能会匹配到多个队列)(模式匹配,多播)。
Headers: