《RabbitMQ实战指南》读书笔记——基础篇(Chapter 1~3)

1、什么是MQ

    MQ有点对点(P2P,Point-to-Point)和发布/订阅(Pub/Sub)两种模式。RabbitMQ属于P2P模式,但也可以通过将消息写入多个队列来实现发布订阅,如图所示。

    MQ的作用概括如下:解耦(两边处理过程独立)、冗余(存储)、扩展性、削峰、可恢复性、顺序保证(一定程度上)、缓冲(控制数据流速度)、异步通信

    RabbitMQ是Erlang实现的AMQP(高级消息队列协议)的消息中间件,两者的模型架构一样。AMPQ协议可以看作结构化命令的集合,有Module Layer(定义命令)、Session Layer(为通信提供可靠性机制)、Transport Layer(物理层、链路层)三层。RabbitMQ有可靠性、路由灵活、扩展性、高可用性(镜像)、支持多种协议、多语言客户端、管理界面、插件机制等特点。运行时可以通过rabbitmq-server -detached以守护线程的方式在后台运行,默认端口号5672

 

2、概念

    从生产者到消费者,分为Producer,Exchange,Queue和Consumer,Exchange和Queue合称Broker,可以看作一个RabbitMQ服务节点,即一台服务器。Queue实际存储消息,而Exchange相对而言并不消耗性能。

    消息分为消息体(payload)和标签(label),标签表述这条消息,比如exchange名称或者routing key,消息路由时标签会丢弃,进入队列的只有消息体

    RabbitMQ不支持队列层面的广播消费,多个消费者订阅同一队列时会轮询,一条消息只能被一个Consumer消费,如果需要广播消费需要二次开发或者使用冗余的队列。

    Producer发送给Exchange时需要

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值