前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >认识消息队列

认识消息队列

作者头像
月梦@剑心
发布2023-08-31 10:57:41
1760
发布2023-08-31 10:57:41
举报
文章被收录于专栏:月梦·剑心的技术专栏

消息队列简介

消息队列,英文名:Message Queue,经常缩写为MQ。从字面上来理解,消息队列是一种用来存储消息的队列。可以简单理解消息队列就是将需要传输的数据存放在队列中

  • 消息队列–用于存放消息的组件
  • 程序员可以将消息放入到队列中,也可以从消息队列中获取消息
  • 很多消息队列不是一个永久性的存储,是作为临时存储存在的(设定一个期限:设置消息在MQ中保存10天)
  • 本质是个队列,但这个队列需要支持高吞吐、高并发、并且高可用

消息队列中间件

消息队列中间件就是用来存储消息的软件(组件)。例如Kafka、RabbitMQ等。 常见的MQ中间件:

  • Kafka:分布式的、分区的、多副本的日志提交服务,在高吞吐场景下发挥较为出色
  • RocketMQ:低延迟、强一致、高性能、高可靠、万亿级容量和灵活的可扩展性,在一些实时场景中应用较广
  • Pulsar:是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体、采用存算分离的架构设计
  • BMQ:和Pulsar架构类似,存算分离,初期定位是承接高吞吐的离线业务场景,逐步替换掉对应的Kafka集群

消息队列的应用场景

异步处理

提高响应速度(以用户注册为例,要写数据库,发邮件,发短信,可以把发邮件发短信放到消息队列中,让其他程序处理,从而快速响应)

系统解耦

系统的两个组件之间需要通过API调用,如果一个组件坏了或者API坏了,会导致另一个也不好工作,这时候引入消息队列,一个组件只需要把消息放在MQ中,另一个组件取消息即可。不要让软件和软件依赖太重。

流量消峰

在服务器和数据库之间放一个消息队列,用消息队列的大吞吐量,快速处理用户请求。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 消息队列简介
  • 消息队列中间件
  • 消息队列的应用场景
    • 异步处理
      • 系统解耦
        • 流量消峰
        相关产品与服务
        对象存储
        对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档