什么是优秀的消息队列

简介: 简述消息队列,优秀的消息队列的特质及RoketMQ

什么是优秀的消息队列

从消息队列的产生背景来看,消息队列最大的特点应是解耦、异步、削峰,也就是说传统项目部署方案已经无法应对大数据量的请求访问,往往会导致系统崩溃。而过去耦合度较高的项目更是一崩全崩,这个时候就需要一款产品用来削峰,解耦,保证业务系统的稳定运行。那么从这个角度来看的话,优秀的消息队列一定是可靠的、面向队列的、可扩展的、高性能的,当然分布式的架构就更能保证业务的正常运行,同时保证消息队列自身的稳定运行。

云消息队列RocketMQ

首先来说一下什么是云消息队列RocketMQ

什么是云消息队列RocketMQ

消息队列 RocketMQ 版是阿里云基于 Apache RocketMQ 构建的低延迟、高并发、高可用、高可靠的分布式消息中间件。消息队列 RocketMQ 版既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积、高吞吐、可靠重试等特性。想要了解更多核心概念、消息收发模型、适用场景等可以点击进入查看。

实验室体验

关于云消息队列RocketMQ,个人在实验室环境下手动部署过,也尝试了消息收发的测试,实验室体验地址:RocketMQ中使用Java客户端发送消息和消费的应用 体验效果日志打印比如

另外我们可以通过RocketMQ的可观测页面,可以观测到已经生产的消息以及消息的消费数据

这样就方便在业务运行过程中及时的观测到消息的收发及消费情况,便于当出现问题时及时的发现并解决。

云消息队列RocketMQ特点

云消息队列RocketMQ支持并发消息,意思是生产者可以并发的向topic中发送消息, 消费端不区分顺序的消息,这种模式效率最好。并且RocketMQ同样也支持发送和消费顺序消息,但是顺序消息牺牲了可用性,单节点故障会直接影响顺序消息。其中印象最深刻的是RocketMq支持发送事务消息,通常情况下大家对于关系型数据库的喜爱多数也是因为支持事务,现在有一款性能强大,可拓展性好,实时性高的消息队列,并且还支持事务,真的很出色。

事务消息流程图如图

写在最后

最后RocketMQ支持多种负载均衡和高可用性方案,支持点对点、推送模式、拉模式、瀑布模式等多种消息传输方式,作为云消息队列,使用者无需考虑RocketMQ消息队列的维护,而可以专心投入的业务中去,对业务的拓展也是很友好的,因此无论什么样的业务场景,只要你需要消息队列,那么云消息队列RocketMQ都将是你不错的选择。

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
6月前
|
消息中间件 大数据 Java
什么是消息队列
什么是消息队列
75 0
|
消息中间件 存储 数据库
消息队列有什么用
通过异步处理提高系统性能(减少响应所需时间) 削峰/限流 降低系统耦合性。
96 0
|
6月前
|
消息中间件 负载均衡 数据挖掘
以12306讲解为什么要使用消息队列
以12306讲解为什么要使用消息队列
73 0
|
消息中间件 开发框架 Java
消息队列使用的四种场景介绍(二)
消息队列使用的四种场景介绍
|
消息中间件 分布式计算 Hadoop
在实际应用中使用消息队列
在实际应用中使用消息队列
116 2
|
消息中间件 存储 缓存
关于消息队列的那些事
关于消息队列的那些事
|
消息中间件 存储 缓存
消息队列(六)
消息队列(六)
241 0
消息队列(六)
|
消息中间件 存储 缓存
消息队列(三)
消息队列(三)
125 0
消息队列(三)
|
消息中间件 SQL 关系型数据库
消息队列
消息队列
233 0
|
消息中间件 存储 NoSQL