万亿级数据洪峰下的消息引擎Apache RocketMQRocketMQ 未来展望 m w a l i b a b a - i n c . c o m ©2016 Alibaba Middleware Group n 历年双11消息数量变化 n 消息中间件核心链路 n 低延迟存储 n 容量保障 n 熔断机制 n 多副本高可用 10亿 百亿 千亿 5千亿+ 万亿+ 历年双11消息数量变化 2012双11 2013双11 2014双11 2015双11 几十万条/秒 菜鸟蓄洪 天猫满返 交易买卖家 BCP 交易安全 钉钉 淘客 航旅 发布消息峰值:数千万条/秒 订阅消息峰值:数千万条/秒 堆积消息峰值:千亿条 消息中间件核心链路 1.4万亿 万亿洪峰下有哪些问题 机器假死 IO Util,Load飙高 磁盘响应慢 消息大量堆积 网卡故障,甚至流量跑满 磁盘损坏 零点之战:发布消息SLA要求100% 慢请求开始大量增加 ①消息服务器 ②消息服务器 ③消息服务器 ④消息服务器 应用 规则 1. 最多只能隔离 30%的机器。 2. 响应时间过长, 开始隔离1分钟 3. 调用抛异常隔 离1分钟 4. 如果隔离的服 务器超过30%, 则有部分调用 会进入隔离列 表中最早隔离 的机器 1.4万亿 双十一当天高可用要求 ~~ 100% 低延迟的分布式存储系统 在线熔断机制 完善的容量评估 SLA=990 码力 | 35 页 | 993.29 KB | 1 年前3
万亿级数据洪峰下的消息引擎 Apache RocketMQRocketMQ 未来展望 m w a l i b a b a - i n c . c o m ©2016 Alibaba Middleware Group n 历年双11消息数量变化 n 消息中间件核心链路 n 低延迟存储 n 容量保障 n 熔断机制 n 多副本高可用 10亿 百亿 千亿 5千亿+ 万亿+ 历年双11消息数量变化 2012双11 2013双11 2014双11 2015双11 几十万条/秒 菜鸟蓄洪 天猫满返 交易买卖家 BCP 交易安全 钉钉 淘客 航旅 发布消息峰值:数千万条/秒 订阅消息峰值:数千万条/秒 堆积消息峰值:千亿条 消息中间件核心链路 1.4万亿 万亿洪峰下有哪些问题 机器假死 IO Util,Load飙高 磁盘响应慢 消息大量堆积 网卡故障,甚至流量跑满 磁盘损坏 零点之战:发布消息SLA要求100% 慢请求开始大量增加 ①消息服务器 ②消息服务器 ③消息服务器 ④消息服务器 应用 规则 1. 最多只能隔离 30%的机器。 2. 响应时间过长, 开始隔离1分钟 3. 调用抛异常隔 离1分钟 4. 如果隔离的服 务器超过30%, 则有部分调用 会进入隔离列 表中最早隔离 的机器 1.4万亿 双十一当天高可用要求 ~~ 100% 低延迟的分布式存储系统 在线熔断机制 完善的容量评估 SLA=990 码力 | 35 页 | 5.82 MB | 1 年前3
Apache RocketMQ 从入门到实战在压力时,从服务器可以承担读服务(消息消费)。所有 Broker,包含 Slave 服务器每隔 30s 会向 Nameserver 发送心跳包,心跳包中会包含存在在 Broker 上所有的 topic 的路 由信息。 本文来自『中间件兴趣圈』公众号,仅作技术交流,未授权任何商业行为。 11 > 1.1 RocketMQ 核心概念扫盲篇 3. Client 消息客户端,包括 Producer(消息发送者)和 注册存储在该服务器上的路由信息,并每隔 30s 向 Nameserver 发送心跳包,并更新路由信息。 Nameserver 每隔 10s 扫描路由表,如果检测到 Broker 服务宕机,则移除对应的路 由信息。 消息生产者每隔 30s 会从 Nameserver 重新拉取 Topic 的路由信息并更新本地路由 表;在消息发送之前,如果本地路由表中不存在对应主题的路由消息时,会主动向 Nameserver tTopicQueueNums,即默认为 4。 Step4:Broker 端收到消息后的处理流程 服务端收到消息发送的处理器为:SendMessageProcessor,在处理消息发送时, 会调用 super.msgCheck 方法: AbstractSendMessageProcessor#msgCheck 本文来自『中间件兴趣圈』公众号,仅作技术交流,未授权任何商业行为。 1.20 码力 | 165 页 | 12.53 MB | 1 年前3
消息中间件RocketMQ原理解析 - 斩秋................ 49 1. invokeSyncImpl 同步调用实现 .................................................................................. 49 2. invokeAsyncImpl 异步调用实现 ........................................ 息来实现事物消费 调回调接口消费消息,返回状态对象 ConsumeOrderlyStatus 根据消费状态,处理结果 1) 非事物方式,自动提交 消息消息状态为 success: 调用 processQueue.commit 方法 获取 msgTreeMapTemp 的最后一个 key,表示提交的 offset 清空 msgTreeMapTemp 的消息,已经成功消费 象 List 表示升序排列,前面讲到文件名即 是消息在此文件的中初始偏移量,排好序后组成了一个连续的消息队 当消息到达 broker 时,需要获取最新的 MapedFile 写入数据,调用 MapedFileQueue 的 getLastMapedFile 获取,此函数如果集合中一个也没有创建一个,如果最后一个写满了也创 建一个新的。 MapedFileQueue 在获取 getLastMapedFile0 码力 | 57 页 | 2.39 MB | 1 年前3
基于Apache APISIX 与RocketMQ 构建云原生一体化架构RocketMQ 简介 02 云原生时代的 RocketMQ 03 借力 APISIX 构建云原生接入体系 CONTENT Apache RocketMQ 简介 01 业务消息领域挑战 • 核心链路,稳定性要求高、时延敏感 • 容量峰值具有随机性,弹性要求高 • 业务场景复杂、集成要求尽可能简单 • 运维及流量调拨要求高 极简架构 高性能 金融级高可靠 打造业务消息领域首选 零依赖 对弹性的要求开始从物理资源变为逻辑资源 • IaaS 的多样性对应用交付部署提出了更高要求 • 可运维性、可观测性带来了更大挑战 • 多租环境带来了更高的网络及安全隔离要求 • 无限资源 vs 有限成本 • 冗长的请求链路,膨胀的技术栈 ……. 面向失败 松散耦合 基础设施解耦 极致弹性 多场景适应 低成本 高 SLA X 客户价值: X 多场景 云原生时代的挑战 云原生四要素 云原生时代的 RocketMQ0 码力 | 22 页 | 2.26 MB | 1 年前3
RocketMQ v3.2.4 开发指南对象注册一个 Listener 接口,一旦收到消息,Consumer 对象立 刻回调 Listener 接口方法。 Pull Consumer Consumer 的一种,应用通常主劢调用 Consumer 的拉消息方法从 Broker 拉消息,主劢权由应用控制。 Producer Group 一类 Producer 的集合名称,返类 Producer 通常収送一类消息,丏収送逡辑一致。 也就是说消费消息要做到幂等性。RocketMQ 虽然丌能严格保证丌重复,但是正常情冴下很少会出现重复収送、消 费情冴,只有网络异常,Consumer 启停等异常情冴下会出现消息重复。 此问题的本质原因是网络调用存在丌确定性,即既丌成功也丌失败的第三种状态,所以才产生了消息重复性问 题。 4.10 Broker 的 Buffer 满了怎么办? Broker 的 Buffer 通常挃的是 Broker 定期从 Name Server 叏 Topic 路 由信息,幵吐提供 Topic 服务的 Master 建立长连接,丏定时吐 Master 収送心跳。Producer 完全无状态,可 集群部署。 Consumer 不 Name Server 集群中的其中一个节点(随机选择)建立长连接,定期从 Name Server 叏 Topic 路 由信息,幵吐提供 Topic 服务的 Master、Slave0 码力 | 52 页 | 1.61 MB | 1 年前3
Apache RocketMQ 介绍链滴 Apache RocketMQ 介绍 作者:boccaro 原文链接:https://ld246.com/article/1588041859812 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0) Apache RocketMQ 介绍 概要 Apache RocketMQ是一个分布式消息传递和流媒体平台,具有低延迟,高性能和可靠性,万亿级容 种情况下,阿里巴巴决定发明一个新的消息传递引擎来处理更广泛的用例集,从传统的发布/订阅方 到大批量实时零损失容忍交易系统。 里程碑 2012年,阿里巴巴开始开发RocketMQ,经历了数次双11核心交易链路检验。 2016年11月11日,RocketMQ又一次在阿里巴巴全球购物节上处理了1.2万亿个并发在线消息传输, 后阿里巴巴将RocketMQ捐献给Apache Incubator。 2017年9月25日0 码力 | 5 页 | 375.48 KB | 1 年前3
rocketmq 服务部署链滴 rocketmq 服务部署 作者:gitsilence 原文链接:https://ld246.com/article/1632123166220 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0) 摘自:https://zhuanlan.zhihu.com/p/226173170 rocketmq源码构建 系统:Mac OS 12.00 码力 | 11 页 | 284.35 KB | 1 年前3
docker-compose 安装 RocketMQdocker-compose 安装 rocketmq 作者:gaga 原文链接:https://ld246.com/article/1607353262990 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0) 一、拉取镜像 docker pull rocketmqinc/rocketmq 二、设置网段 docker network create0 码力 | 3 页 | 135.58 KB | 1 年前3
共 9 条
- 1













