AMQP 概论

匿名 (未验证) 提交于 2019-12-03 00:09:02

AMQP

  是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。目标是实现一种在全行业广泛使用的标准消息中间件技术,以便降低企业和系统集成的开销,并且向大众提供工业级的集成服务。

“你好!”,你跟国外的美女一般会说“hello!”一样。

信道

“多路复用”,对于执行多个任务的多线程或者异步应用程序来说,它非常有用。

包括的要素

生产者、消费者、消息

  生产者

  消费者

  消息:

交换器、队列、绑定、路由键

  队列通过路由键(routing key,某种确定的规则)绑定到交换器,生产者将消息发布到交换器,交换器根据绑定的路由键将消息路由到特定队列,然后由订阅这个队列的消费者进行接收。

消息的确认

  消费者收到的每一条消息都必须进行确认(自动确认和自行确认)。

常见问题

  如果消息达到无人订阅的队列会怎么办

  多个消费者订阅到同一队列怎么办?消息以循环的方式发送给消费者,每个消息只会发送给一个消费者。

  消息路由到了不存在的队列怎么办?

虚拟主机

交换器类型

)不实用,可以忽略。

Direct

channel->basic_public($msg,’’,’queue-name’)

Fanout

  消息广播到绑定的队列,不管队列绑定了什么路由键,消息经过交换器,每个队列都有一份。

Topic

“*”和“#”通配符进行处理,使来自不同源头的消息到达同一个队列,”.”“#”匹配一个或多个。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!