什么是消息队列

消息队列

1.概括
1.1消息队列是什么
queue:队列
实现排队,先后顺序的数据结构

message:消息
队列中存放的数据,将自字符串封装的消息对象

1.2消息队列的作用
❤解耦
代码,或者系统通信都可能存在强耦合的关系,可以通过消息队列第三方技术处理强耦合,解耦
❤消峰(消除并发峰值)
请求到达系统的方法上限,超过上限的请求不丢失不拒绝. 在这里插入图片描述
通过引入消息队列可以解决这2个问题
在这里插入图片描述
2.Rabbimtq
2.1介绍
企业级别,常见的一种开源消息中间件.实现了sun公司定义的AMQP高级消息队列协议.
AMQP: advanced message queue protocal. 一套接口,实现接口的消息队列可以做到性能较高.

2.2结构
客户端:能连接上rabbitmq的所有终端(代码语言.软件程序),都叫做rabbitmq的客户端.
生产者:消息发送端
消费者:接收消息端
无角色:唯一功能定义rabbitmq组件
服务端:rabbitmq启动的消息代理服务器
结构:
连接组件
交换机组件
队列组件
粗粒度连接结构:
在这里插入图片描述
细粒度核心组件
连接:客户端可以获取的连接通道,通过连接通道才可以和服务端进行消息的逻辑处理的沟通,发送消息,监听消费,声明组 件
长连接:基于TCP/ip封装的,创建和销毁都占用大量资源,不易频繁创建销毁.
短连接:基于长连接创建的短连接,可以频繁创建销毁,速度很快,适合用来通信管理.
在这里插入图片描述
交换机:exchange,在客户端使用rabbitmq时很有可能会通过一次消息传递并发发送到多个后端队列中,对于客户端并发能力就有稳定的高性能的要求.如果这种并发发送消息交给客户端,由于客户端的语言不同,性能不同,并发不同,导致rabbitmq技术使用不稳定.引入交换机,只允许生产端发送消息时交给交换机.由交换机来处理后续发送队列并发逻辑.exchange是有erlang编写的.
计算机生成了可选文字:rabbitmqexchane生产端"明天7点开会"
队列组件:queue
真正存储消息对象的容器.一个rabbitmq中可以有多个队列,但是每个队列必须绑定一个交换机使用.为了防止声明队列时,某个队列忘记了绑定,错误的没有绑定交换机,rabbitmq提供了一个(AMQP default)交换机,每个声明的队列必定使用队列名称作为路由key绑定这个默认交换机.

3.rabbitmq的启动和控制台登录
3.1服务器启动rabbtimq
#service rabbitmq-server start
start启动
stop停止
restart重启

3.2登录控制台
控制台是web应用,可以通过http协议访问

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值