- 本文深入分析了RocketMQ与Kafka在消息存储和消费实现上的差别,并探讨了各自的适用场景。在消息存储方面,RocketMQ采用CommitLog和ConsumeQueue的分离结构,优化了磁盘读写性能;而Kafka则以分区为基本存储单元,通过日志段文件和索引文件实现高效存储。在消息消费方面,RocketMQ支持集群和广播消费模式,采用先消费后确认的机制;Kafka基于消费者组实现消费,提供自动和手动提交偏移量的机制。适用场景上,RocketMQ适合金融和电商等需要高可靠性和顺序性的场景,而Kafka则在大规模日志收集和大数据流处理场景中表现出色廖****波2024-10-10520
- Rocketmq是常用的消息中间件,在日常使用过程中,消费者在消费的过程中,消费的速度跟不上broker服务端的发送速度,未处理的消息会越来越多,消息出现堆积进而会造成消息消费延迟。消息堆积会对集群的性能有一定的影响。如何定位和解决消息堆积问题是消息中间件日常运维的关键。洪****全2024-07-01140
- RocketMQ作为一款高性能的分布式消息中间件,在现代分布式系统中扮演着关键角色。它通过高吞吐量、低延迟、消息持久化、高可用性、多种消息模式和顺序消息支持等技术特点,实现了系统间的解耦、可靠性和扩展性。在微服务架构中,RocketMQ用于服务间的异步消息传递,提高系统的灵活性和可维护性。在金融交易系统中,它确保交易数据的实时同步和一致性,支持高并发的交易处理。通过这些案例,RocketMQ展示了其在构建高效、可靠分布式系统中的重要作用,成为应对不断变化业务需求的理想技术选择。廖****波2024-06-1130
- 在RocketMQ持久化原理中,我们已经学习过发送消息的基本原理。本章,我们来看看消费者(Consumer)消费消息的基本原理。likp2024-06-0750
- 前面我们简单介绍过NameServer和Broker是如何实现高可用的,NameServer是数据集中集群。现在我们重点来看下RocketMQ4.5版本以后的Broker高可用原理likp2024-04-30200
- 深入探索:利用日志服务查看API调用日志每日知识小分享2024-04-10130
- RocketMQ是一款低延迟、高并发、高可用、高可靠的分布式消息中间件。其除了可为分布式应用提供异步解耦的能力,还在大促峰值期间提供了蓄洪、消费限速、失败重试等能力,且具备高可用、负载均衡、消息可追溯等特性。 以下将从客户端源码阅读入手,从其调度消费链路以及高可用角度进行对其进行深入了解。z****n2023-12-1550
- 上一章节,我们了解了RocketMQ持久化原理的MessageQueue、消息发送和消息存储,现在我们学习一下RocketMQ持久化原理的存储性能优化。likp2023-12-13131
- 数据在RocketMQ中是分布式存储的。生产者发送消息时,先从NameServer获取到路由信息,然后根据一定算法将消息发送到某个Master-Broker中。但是,Topic是一个逻辑概念,对于某个Topic来说,属于它的消息分布在不同的Broker上,那如何决定消息到底分布在哪个Broker上呢?现在我们先了解一下MessageQueue、消息发送和消息存储。likp2023-12-06311
- 前几个章节,我们已经对RocketMQ的基本架构进行了大体介绍。现在我们就要利用RocketMQ对第一篇文章中介绍的订单系统进行改造了likp2023-11-03420
- Nameserver和Zookeeper在用途和功能上有一些相似之处,都用于管理分布式系统的配置信息和命名服务。然而,它们的具体实现和使用场景有所不同。Nameserver主要用于域名解析,关注于将域名映射到相应的IP地址,提供域名服务;而Zookeeper主要用于分布式系统的协调和管理,关注于分布式数据的一致性和共享,提供分布式协调服务。s****n2023-10-27560
- 生产部署前一般都需要进行性能测试,所以本章我们来看下如何对RocketMQ进行性能测试likp2023-10-131060
- Rocketmq是由国人开发,贡献给Apache组织的项目,其采用Java语言开发。经过历年双十一流量洪峰的洗礼,并发性和可靠性得到了充分的验证,且支持的功能丰富,是活跃度较高的中间件之一,由于中文文档丰富,在国内很有市场。莫****过2023-09-26190
- 我们介绍了RocketMQ的基本架构,并对其中的NameServer、Broker、Producer、Customer这四个核心组件进行了简要讲解。RocketMQ实现高可用和可扩展的思路其实没什么新意,就是基于Raft协议的主从架构,以及数据分散集群模式。likp2023-09-18890
- 介绍RocketMQ的死信队列功能叶****伟2023-09-18110
- RocketMq的多种集群模式葛****然2023-08-212670
- 大型系统需要引入消息中间件来完成解耦、异步、削峰。这种分布式技术的使用,一定要围绕高新能、高可用、可扩展、数据一致性这四个概念likp2023-08-17290
- rocketMq热点队列扩散处理方式康****彬2023-08-0290
- RocketMQ 支持 HTTP 协议,以便非 Java 语言的开发者更方便地使用其消息发送和消费功能。本文介绍实现客户端无状态消费,支持消息生产、消息消费接口,允许消费方主动ACK 的 RocketMQ的 HTTP RESTful接入服务实现原理廖****波2023-06-25930
- 消息队列RocketMQ是一种高可用的消息队列系统,它能够保证消息传递的可靠性和稳定性。为了测试RocketMQ的高可用性,可以采取以下步骤: 部署多个RocketMQ实例,并将它们组成一个集群。 向集群中的某一个实例发送大量的消息,并观察消息是否能够被其他实例成功消费。 测试单个实例的故障转移能力,比如关闭一个实例,观察剩余实例是否能够继续正常工作,并且已经发送但未被消费的消息是否能够被其他实例消费。 测试整个集群的故障转移能力,比如关闭多个实例,观察剩余实例是否能够继续正常工作,并且已经发送但未被消费的消息是否能够被其他实例消费。 通过以上测试,可以验证RocketMQ的高可用性,确保其在生产环境中能够稳定运行。廖****波2023-06-08650
- RocketMQ4.x可观测主要是基于消息轨迹来实现,在发送消息和消费消息时,将上下文中的参数添加进轨迹消息,将轨迹数据数据当成消息保存到本身集群中。而从5.x版本使用Telemetry遥测协议将可观测开关以及接入点下发到客户端,将客户端上报的所有可观测消息在Proxy侧做收敛,再统一使用标准的OpenTelemetry和Opencensu两个协议上报到SLS,SLS再通过TLog的方式与Prometheus、Grafana进行对接,来支持标准化的可观测协议,达到更丰富的可观测能力。 即对于使用5.x gRPC SDK客户端的用户无法通过原本的轨迹消息进行可观测,而是需要借助于新的能力,我们想提供即使使用新的SDK客户端也能观察到原本的消息轨迹的支持。Zheng2023-06-01970
- RocketMQ服务端通过CommitLog存储消息数据,并使用ConsumeQueue来保存每条消息在CommitLog中的物理偏移量。然而通过对ConsumeQueue和CommitLog整体遍历寻找消息的方式无疑非常的低效。因此,RocketMQ设计IndexFile支持通过唯一Key和时间范围来快速查询检索消息。4****m2023-05-26130
- 使用GO语言访问RocketMQ叶****伟2023-05-19190
- rocketmq消息采用顺序写入追求极高的写入性能,本文主要聚焦rocketmq的磁盘写入以及主从复制分析消息写入流程l****n2023-04-28120
- 在一些跨地域管控业务中,需要对多个地域的服务进行同时的变更,例如异地双活业务切流,需要同时变更2个地域的路由规则,将某个地域的业务转移到另外一个地域中。 跨地域管控的问题在于,用户VPC是封闭的,网络通道是单向的,一般正常情况下是无法从VPC外部对内部服务进行访问的。 本方案提出一种基于预置逆向网络代理服务的方式,实现公有云上管控中心与用户VPC直通的跨地域管控方法。唐****律2023-04-21460
- 从源码层面剖析rocketmq如何实现任意延迟消息c****n2023-03-283880
- RocketMQ是一款具备低延时、高性能的消息队列产品。单个消费进程是有性能的上限的。不同的业务场景,消耗的时间不同。短则毫秒级,长则可能几秒甚至几分钟。 为了提高消费的性能,需要可以并行去消费消息。并行消费消息的时候,通过消费的负载均衡,把消费的任务分摊到多个消费者实例上,提高整体的消费性能。叶****伟2023-03-28220
- Zheng2022-11-286951
共 29 条
- 1
页
- 本文深入分析了RocketMQ与Kafka在消息存储和消费实现上的差别,并探讨了各自的适用场景。在消息存储方面,RocketMQ采用CommitLog和ConsumeQueue的分离结构,优化了磁盘读写性能;而Kafka则以分区为基本存储单元,通过日志段文件和索引文件实现高效存储。在消息消费方面,RocketMQ支持集群和广播消费模式,采用先消费后确认的机制;Kafka基于消费者组实现消费,提供自动和手动提交偏移量的机制。适用场景上,RocketMQ适合金融和电商等需要高可靠性和顺序性的场景,而Kafka则在大规模日志收集和大数据流处理场景中表现出色
- Rocketmq是常用的消息中间件,在日常使用过程中,消费者在消费的过程中,消费的速度跟不上broker服务端的发送速度,未处理的消息会越来越多,消息出现堆积进而会造成消息消费延迟。消息堆积会对集群的性能有一定的影响。如何定位和解决消息堆积问题是消息中间件日常运维的关键。
- 在现代信息技术时代,服务器作为数据处理和存储的核心设备,经常需要与外界进行通信和数据交换。然而,将服务器连接到外网也带来了一系列挑战,如网络安全、数据传输效率等。本文将探讨服务器连接外网的基本原理、实践方法和相关注意事项。
- RocketMQ作为一款高性能的分布式消息中间件,在现代分布式系统中扮演着关键角色。它通过高吞吐量、低延迟、消息持久化、高可用性、多种消息模式和顺序消息支持等技术特点,实现了系统间的解耦、可靠性和扩展性。在微服务架构中,RocketMQ用于服务间的异步消息传递,提高系统的灵活性和可维护性。在金融交易系统中,它确保交易数据的实时同步和一致性,支持高并发的交易处理。通过这些案例,RocketMQ展示了其在构建高效、可靠分布式系统中的重要作用,成为应对不断变化业务需求的理想技术选择。
- 在RocketMQ持久化原理中,我们已经学习过发送消息的基本原理。本章,我们来看看消费者(Consumer)消费消息的基本原理。
- 前面我们简单介绍过NameServer和Broker是如何实现高可用的,NameServer是数据集中集群。现在我们重点来看下RocketMQ4.5版本以后的Broker高可用原理
- 深入探索:利用日志服务查看API调用日志
- RocketMQ是一款低延迟、高并发、高可用、高可靠的分布式消息中间件。其除了可为分布式应用提供异步解耦的能力,还在大促峰值期间提供了蓄洪、消费限速、失败重试等能力,且具备高可用、负载均衡、消息可追溯等特性。 以下将从客户端源码阅读入手,从其调度消费链路以及高可用角度进行对其进行深入了解。
- 上一章节,我们了解了RocketMQ持久化原理的MessageQueue、消息发送和消息存储,现在我们学习一下RocketMQ持久化原理的存储性能优化。
- 数据在RocketMQ中是分布式存储的。生产者发送消息时,先从NameServer获取到路由信息,然后根据一定算法将消息发送到某个Master-Broker中。但是,Topic是一个逻辑概念,对于某个Topic来说,属于它的消息分布在不同的Broker上,那如何决定消息到底分布在哪个Broker上呢?现在我们先了解一下MessageQueue、消息发送和消息存储。
- 前几个章节,我们已经对RocketMQ的基本架构进行了大体介绍。现在我们就要利用RocketMQ对第一篇文章中介绍的订单系统进行改造了
- Nameserver和Zookeeper在用途和功能上有一些相似之处,都用于管理分布式系统的配置信息和命名服务。然而,它们的具体实现和使用场景有所不同。Nameserver主要用于域名解析,关注于将域名映射到相应的IP地址,提供域名服务;而Zookeeper主要用于分布式系统的协调和管理,关注于分布式数据的一致性和共享,提供分布式协调服务。
- 生产部署前一般都需要进行性能测试,所以本章我们来看下如何对RocketMQ进行性能测试
- Rocketmq是由国人开发,贡献给Apache组织的项目,其采用Java语言开发。经过历年双十一流量洪峰的洗礼,并发性和可靠性得到了充分的验证,且支持的功能丰富,是活跃度较高的中间件之一,由于中文文档丰富,在国内很有市场。
- 我们介绍了RocketMQ的基本架构,并对其中的NameServer、Broker、Producer、Customer这四个核心组件进行了简要讲解。RocketMQ实现高可用和可扩展的思路其实没什么新意,就是基于Raft协议的主从架构,以及数据分散集群模式。
- 介绍RocketMQ的死信队列功能
- RocketMq的多种集群模式
- 大型系统需要引入消息中间件来完成解耦、异步、削峰。这种分布式技术的使用,一定要围绕高新能、高可用、可扩展、数据一致性这四个概念
- rocketMq热点队列扩散处理方式
- RocketMQ 支持 HTTP 协议,以便非 Java 语言的开发者更方便地使用其消息发送和消费功能。本文介绍实现客户端无状态消费,支持消息生产、消息消费接口,允许消费方主动ACK 的 RocketMQ的 HTTP RESTful接入服务实现原理
- 消息队列RocketMQ是一种高可用的消息队列系统,它能够保证消息传递的可靠性和稳定性。为了测试RocketMQ的高可用性,可以采取以下步骤: 部署多个RocketMQ实例,并将它们组成一个集群。 向集群中的某一个实例发送大量的消息,并观察消息是否能够被其他实例成功消费。 测试单个实例的故障转移能力,比如关闭一个实例,观察剩余实例是否能够继续正常工作,并且已经发送但未被消费的消息是否能够被其他实例消费。 测试整个集群的故障转移能力,比如关闭多个实例,观察剩余实例是否能够继续正常工作,并且已经发送但未被消费的消息是否能够被其他实例消费。 通过以上测试,可以验证RocketMQ的高可用性,确保其在生产环境中能够稳定运行。
- RocketMQ4.x可观测主要是基于消息轨迹来实现,在发送消息和消费消息时,将上下文中的参数添加进轨迹消息,将轨迹数据数据当成消息保存到本身集群中。而从5.x版本使用Telemetry遥测协议将可观测开关以及接入点下发到客户端,将客户端上报的所有可观测消息在Proxy侧做收敛,再统一使用标准的OpenTelemetry和Opencensu两个协议上报到SLS,SLS再通过TLog的方式与Prometheus、Grafana进行对接,来支持标准化的可观测协议,达到更丰富的可观测能力。 即对于使用5.x gRPC SDK客户端的用户无法通过原本的轨迹消息进行可观测,而是需要借助于新的能力,我们想提供即使使用新的SDK客户端也能观察到原本的消息轨迹的支持。
- RocketMQ服务端通过CommitLog存储消息数据,并使用ConsumeQueue来保存每条消息在CommitLog中的物理偏移量。然而通过对ConsumeQueue和CommitLog整体遍历寻找消息的方式无疑非常的低效。因此,RocketMQ设计IndexFile支持通过唯一Key和时间范围来快速查询检索消息。
- 使用GO语言访问RocketMQ
- rocketmq消息采用顺序写入追求极高的写入性能,本文主要聚焦rocketmq的磁盘写入以及主从复制分析消息写入流程
- 在一些跨地域管控业务中,需要对多个地域的服务进行同时的变更,例如异地双活业务切流,需要同时变更2个地域的路由规则,将某个地域的业务转移到另外一个地域中。 跨地域管控的问题在于,用户VPC是封闭的,网络通道是单向的,一般正常情况下是无法从VPC外部对内部服务进行访问的。 本方案提出一种基于预置逆向网络代理服务的方式,实现公有云上管控中心与用户VPC直通的跨地域管控方法。
- 从源码层面剖析rocketmq如何实现任意延迟消息
- RocketMQ是一款具备低延时、高性能的消息队列产品。单个消费进程是有性能的上限的。不同的业务场景,消耗的时间不同。短则毫秒级,长则可能几秒甚至几分钟。 为了提高消费的性能,需要可以并行去消费消息。并行消费消息的时候,通过消费的负载均衡,把消费的任务分摊到多个消费者实例上,提高整体的消费性能。
没有更多了