前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RabbitMQ消息中间件学习2:消息队列协议、持久化、分发策略等

RabbitMQ消息中间件学习2:消息队列协议、持久化、分发策略等

作者头像
程序员洲洲
发布2024-06-07 08:59:33
760
发布2024-06-07 08:59:33
举报
文章被收录于专栏:项目文章项目文章

消息中间件的应用场景

1、跨系统数据传递 2、高并发的流量削峰 3、数据的分发与异步处理 4、大数据分析与处理 5、分布式事务

协议

只有把协议定好了才能进行工作。

网络协议的三个要素 1、语法。 2、语义。 3、时序。

为什么消息队列不使用HTTP协议呢? 1、因为MQ是追求极致的体验,但是HTTP是没办法完成的,是比较复杂的,HTTP包含了请求报文等cookie、状态码、响应码什么的,所以为了追求性能,只需要接收消息即可。 2、大部分HTTP的请求都是短连接,实际交互过程中,一个请求到相应很有可能会中断,中断以后就不会进行持久化,就会造成请求的丢失。这样不利于消息中间件的业务场景,因为消息中间件可能是一个长期的获取消息的过程。

AMQP协议

特性: 1、分布式事务支持。 2、消息的持久化支持。。 3、高性能和高可靠的消息处理优势。

持久化

简单来说就是存入磁盘,而不是在内存中随服务器重启断开而消失 ,使数据能够永久保存。

常见的持久化方式: ActiveMQ 支持文件存储和数据库存储。 RabbitMQ支持文件存储。不支持数据库存储

消息的分发策略

MQ有几个角色: 1、生产者。 2、存储消息。 3、消费者。

消息分发策略机制和对比

发布订阅:就是只要订阅了,有消息了就能收到信息。 轮询分发:当消息到消息队列了,讲究的是一个公平的机制(理解成平等最好)。无论你的服务器性能怎么样都会是公平的。(后面会有一个指标QS)但是是没有顺序的,

公平分发是能者多劳的,多劳多得。

重发:

当订单系统没有反馈,即中间件没有收到订单系统的反馈,那么就会重发消息,保证消息的可靠性期。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 消息中间件的应用场景
  • 协议
  • AMQP协议
  • 持久化
  • 消息的分发策略
  • 消息分发策略机制和对比
相关产品与服务
消息队列
腾讯云消息队列 TDMQ 是分布式架构中的重要组件,提供异步通信的基础能力,通过应用解耦降低系统复杂度,提升系统可用性和可扩展性。TDMQ 产品系列提供丰富的产品形态,包含 CKafka、RocketMQ、RabbitMQ、Pulsar、CMQ 五大产品,覆盖在线和离线场景,满足金融、互联网、教育、物流、能源等不同行业和场景的需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档