AMQP
是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。目标是实现一种在全行业广泛使用的标准消息中间件技术,以便降低企业和系统集成的开销,并且向大众提供工业级的集成服务。
“你好!”,你跟国外的美女一般会说“hello!”一样。
信道
“多路复用”,对于执行多个任务的多线程或者异步应用程序来说,它非常有用。
包括的要素
生产者、消费者、消息
生产者
消费者
消息:
交换器、队列、绑定、路由键
队列通过路由键(routing key,某种确定的规则)绑定到交换器,生产者将消息发布到交换器,交换器根据绑定的路由键将消息路由到特定队列,然后由订阅这个队列的消费者进行接收。
消息的确认
消费者收到的每一条消息都必须进行确认(自动确认和自行确认)。
常见问题
如果消息达到无人订阅的队列会怎么办
多个消费者订阅到同一队列怎么办?消息以循环的方式发送给消费者,每个消息只会发送给一个消费者。
消息路由到了不存在的队列怎么办?
虚拟主机
交换器类型
)不实用,可以忽略。
Direct
channel->basic_public($msg,’’,’queue-name’)
Fanout
消息广播到绑定的队列,不管队列绑定了什么路由键,消息经过交换器,每个队列都有一份。
Topic
“*”和“#”通配符进行处理,使来自不同源头的消息到达同一个队列,”.”“#”匹配一个或多个。
来源:博客园
作者:SoyWang
链接:https://www.cnblogs.com/Soy-technology/p/11546533.html