文章 2023-01-04 来自:开发者社区

RocketMQ 5.0 多语言客户端的设计与实现

本文作者:古崟佑,阿里云中间件开发。RocketMQ 5.0 版本拥有非常多新特性,比如存储计算分离、 batch 能力的提升等,它是具有里程碑意义的版本。提到新版本,我们往往会首先想到服务端架构的设计变动,很容易忽略客户端的设计理念。客户端也是消息产品的必要组成部分,许多特性需要 client 与 server 两端互相协作,才能更好地实现。轻量化、云原生以及统一模型是 RocketMQ 5.....

RocketMQ 5.0 多语言客户端的设计与实现
文章 2023-01-04 来自:开发者社区

RocketMQ Compaction Topic的设计与实现

本文作者:刘涛,阿里云智能技术专家。01 Compaction Topic介绍一般来说,消息队列提供的数据过期机制有如下几种,比如有基于时间的过期机制——数据保存多长时间后即进行清理,也有基于数据总量的过期机制——数据分区数据量达到一定值后进行清理。而 Compaction Topic 是一种基于 key 的数据过期机制,即对于相同 key 的数据只保留最新值。该特性的应用场景主要为维护...

RocketMQ Compaction Topic的设计与实现
文章 2022-10-20 来自:开发者社区

RocketMQ Flink Catalog 设计与实践

摘要:本文为 RocketMQ Flink Catalog 使用指南。主要内容包括:Flink 和 Flink CatalogRocketMQ Flink ConnectorRocketMQ Flink Catalog作者:李晓双 ,Apache RocketMQ ContributorMentor:蒋晓峰,Apache RocketMQ Committer一、Flink 和 Flink Ca.....

RocketMQ Flink Catalog 设计与实践
文章 2022-09-21 来自:开发者社区

RocketMQ-存储设计

Domain Model领域模型(Domain Model)是对领域内的概念类或现实世界中对象的可视化表示。又称概念模型、领域对象模型、分析对象模型。它专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系。MessageMessage是RocketMQ消息引擎中的主体。messageId是全局唯一的。MessageKey是业务系统(生产者)生成的,所以如果要结合业务,可以....

RocketMQ-存储设计
文章 2022-07-06 来自:开发者社区

一个开发者自述:我是如何设计针对冷热读写场景的 RocketMQ 存储系统

作者:Ninety Percent悸动32 岁,码农的倒数第二个本命年,平淡无奇的生活总觉得缺少了点什么。想要去创业,却害怕家庭承受不住再次失败的挫折,想要生二胎,带娃的压力让我想着还不如去创业;所以我只好在生活中寻找一些小感动,去看一些老掉牙的电影,然后把自己感动得稀里哗啦,去翻一些泛黄的书籍,在回忆里寻找一丝丝曾经的深情满满;去学习一些冷门的知识,最后把自己搞得晕头转向,去参加一些有意思的比....

一个开发者自述:我是如何设计针对冷热读写场景的 RocketMQ 存储系统
文章 2022-05-31 来自:开发者社区

7张图揭晓RocketMQ存储设计的精髓

1、存储概述RocketMQ存储的文件主要包括Commitlog文件、ConsumeQueue文件、Index文件。RocketMQ将所有主题的消息存储在同一个文件中,确保消息发送时按顺序写文件,尽最大能力确保消息发送的高可用性与高吞吐量。但消息中间件一般都是基于主题的订阅与发布模式,消息消费时必须按照主题进行帅选消息,显然从Commitlog文件中按照topic去筛选消息会变得及其低效,为了提....

7张图揭晓RocketMQ存储设计的精髓
文章 2022-05-28 来自:开发者社区

RocketMQ 整合 DLedger(多副本)即主从切换实现平滑升级的设计技巧

源码分析 RocketMQ DLedger 多副本即主从切换系列已经进行到第8篇了,前面的章节主要是介绍了基于 raft  协议的选主与日志复制,从本篇开始将开始关注如何将 DLedger 应用到 RocketMQ中。摘要:详细分析了RocketMQ DLedger 多副本(主从切换) 是如何整合到 RocketMQ中,本文的行文思路首先结合已掌握的DLedger 多副本相关的知识初步....

RocketMQ 整合 DLedger(多副本)即主从切换实现平滑升级的设计技巧
文章 2022-05-28 来自:开发者社区

基于 raft 协议的 RocketMQ DLedger 多副本日志复制设计原理

前面已经用源码的手段对 RocketMQ 日志复制的实现细节做了一个详细的介绍,可能有不少读者朋友们觉得源码阅读较为枯燥,看的有点云里雾里,本篇将首先梳理一下 RocketMQ DLedger 多副本关于日志复制的三个核心流程图,然后再思考一下在异常情况下如何保证数据一致性。1、RocketMQ DLedger 多副本日志复制流程图1.1 RocketMQ DLedger 日志转发(append....

基于 raft 协议的 RocketMQ DLedger 多副本日志复制设计原理
文章 2022-05-27 来自:开发者社区

RocketMQ消息轨迹-设计篇

RocketMQ消息轨迹主要包含两篇文章:设计篇与源码分析篇,本节将详细介绍RocketMQ消息轨迹-设计相关。RocketMQ消息轨迹,主要跟踪消息发送、消息消费的轨迹,即详细记录消息各个处理环节的日志,从设计上至少需要解决如下三个核心问题:消费轨迹数据格式记录消息轨迹(消息日志)消息轨迹数据存储在哪?RocketMQ4.5版本消息轨迹主要记录如下信息:traceType跟踪类型,可选值:Pu....

RocketMQ消息轨迹-设计篇
文章 2022-05-12 来自:开发者社区

RocketMQ消息发送的高可用设计

从rocketmq topic的创建机制可知,一个topic对应有多个消息队列,那么我们在发送消息时,是如何选择消息队列进行发送的?假如这时有broker宕机了,rocketmq是如何规避故障broker的?看完这篇文章,相信你会从文中找到答案。rocketmq在发送消息时,由于nameserver检测broker是否还存活是有延迟的,在选择消息队列时难免会遇到已经宕机的broker,又或者因为....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等