之前看过好几次rabbitMq的博文,断断续续的,觉得自己会了一点,但是过去了一段时间,发现自己全部都忘光了。所以这次打算把rabbitmq彻底清洗一遍!
今天就从AMQP协议开始了解!
Advanced Message Queuing Protocol(AMQP高级消息队列协议)
rabbitmq是基于AMQP的协议实现的,以我自己的理解来看,AMQP就是定了一套规则,规定了消息的发送方,接收方收发消息的工作方式,以及消息的格式等,并且支持符合条件的客户端和消息中间件代理进行通讯。
AMQP本身是一个网络协议,主要的特征就是面向消息,队列,路由(点对点,发布订阅模式等等),可靠性,安全
摊开来说,就是我们想要完成异步通讯,就需要消息发送者发送消息后,消息不会立刻发送到接收者,而是会存放到一个容器中,满足一定条件或者由消息接收者主动订阅完成消息从容器到接收者的下发。这个容器就是我们说的队列,而完成这个功能需要发送者,接收者,容器,等等各组件按照某一个约束或者规则来运行,这个约束规则其实就是AMQP协议了。