大魔王

RabbitMQ Server:也叫broker server,它不是运送食物的卡车,而是一种传输服务。原话是RabbitMQ isn’t a food truck, it’s a delivery service. 他的角色就是维护一条从Producer到Consumer的路线,保证数据能够按照指定的方式进行传输。但是这个保证也不是100%的保证,但是对于普通的应用来说这已经足够了。当然对于商业系统来说,可以再做一层数据一致性的guard,就可以彻底保证系统的一致性了。

Client A & B:也叫Producer,数据的发送方。Create messages                            and Publish (Send) them to a broker server (RabbitMQ)。一个Message有两个部分:Payload(有效载荷)和Label(标签)。Payload顾名思义就是传输的数据,Label是Exchange的名字或者说是一个tag,它描述了payload,而且RabbitMQ也是通过这个label来决定把这个Message发给哪个Consumer。AMQP仅仅描述了label,而RabbitMQ决定了如何使用这个label的规则。

Client 1,2,3:也叫Consumer,数据的接收方。Consumers attach to                            a broker server (RabbitMQ) and subscribe to a queue。把queue比作是一个有名字的邮箱。当有Message到达某个邮箱后,RabbitMQ把它发送给它的某个订阅者即Consumer。当然可能会把同一个Message发送给很多的Consumer。在这个Message中,只有payload,label已经被删掉了。对于Consumer来说,它是不知道谁发送的这个信息的。就是协议本身不支持。但是当然了如果Producer发送的payload包含了Producer的信息就另当别论了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近在项目中有用到rabbitMQ,因此就想借这个机会系统性的学习了一下rabbitMQ,在学习过程中的第一篇教程...
    初级赛亚人阅读 4,955评论 1 5
  • % rabbitMQ learn% qijun% 19/01/2018 mq 的一些概念 mq: mq 是一个m...
    c7d122ec46c0阅读 6,218评论 0 21
  • 1. 概述 Kakfa起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用S...
    尼小摩阅读 5,296评论 0 17
  • 我是个反射弧很长的人,他走之后我没有特别去想他,事实上没有他的这段大学生活我过得特别充实快乐,交了一帮开朗有趣的朋...
    简之如素阅读 1,482评论 0 0
  • 楼下停了3辆警车,斜对门的阿姨在楼门口一直抽搐,眼泪却始终流不出来,那是伤心欲绝的样子。按了电梯回到家里,发现po...
    魔法辣椒阅读 819评论 0 0