栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

MQ、RabbitMQ学习

MQ、RabbitMQ学习

1、MQ的基本概念: 1.1 MQ概述

MQ全称Message Queue (消息队列),是在消息的出传输过程中保存消息的容器,多用于分布式系统之前进行通信

小结

MQ 、消息队列、存储消息的中间件发送放称为生产者,接收方称为消费者


1.2 MQ 的优势和劣势 优势:

应用解耦 —— 提高系统的容错性和可维护性

异步提速 —— 提高用户体验和系统吞吐量

削峰填谷 —— 提高系统稳定性

削峰

填谷


劣势:

系统的可用性降低系统的复杂度提高一致性问题


1.3 常见的MQ产品

目前业界有很多的MQ产品,例如:RabbitMQ、RockerMQ、ActiveMQ、Kafka、ZeroMQ、metaMQ等,在实际选型中,需要结合系统自身需求及产品特征,综合考虑


1.4 RabbitMQ 介绍

1. AMQP,是一个网络协议,称为高级消息队列协议,是应用层的一个开放标准,面向消息的中间件设计

Pubisher: 生产者 —— 负责消息的生产
Exchange: 交换机 —— 负责分发消息给队列
Routes: 路由 —— 负责交换机分发消息给具体的队列
Queue: 队列 —— 负责消息的存储
Consumer: 消费者 —— 负责消息的消费

生产者 生产消息 给交换机,交换机通过路由配置规则分发给具体的队列 消费者再消费队列里的消息


2. RabbitMQ 架构图

Broker: RabbitMQ服务端
Producer: 生产者客户端
Connection: 客户端与服务端建立的连接
channel: 连接里的管道
Exchange: 交换机
Binding: 队列与交换机的连接
Queue: 队列
VirtualHost: 虚拟机
Consumer: 消费者客户端

介绍:
该图 中间Broker 为RabbitMQ 服务端,也就是我们要在物理机上安装的MQ 中间件,用于服务我们的客户端,
俩侧 分别为生产者(Producer)与消费者(Consumer)的客户端,与服务端建立连接(Connection) ,为了节省每次连接消耗的资源, 通过管道(channel)与服务端建立通信,每个服务端里有很多的虚拟机(VirtualHost),这个很好理解,类似于MySQL,每个MySQL 里有很多的库,每个库里有不同的表,那么在MQ 中的的虚拟机里就有交换机与队列,起到了逻辑分区的作用, 交换机可以绑定到不同的队列,至于交换机绑定到那个队列上,取决于binding 这么一个过程


3. RabbitMQ工作模式

4. 队列的属性

属性名属性名称说明默认值
durable是否持久化true: MQ重启还会存在true
exclusive1.是否独占 2.当connection 关闭时,是否删除只能有一个消费者监听
autoDelete是否自动删除当没有消费者监听时 是否自动删除
argments参数参数

未更新完,以后更新

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/707187.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号