 Apache RocketMQ 从入门到实战提交一个文档被接受也同样可以,难的是持续贡献,最终被开源项目的 PMC 认为对该项目 有着突出贡献。 我比较“苦逼”,在带娃方面我的资源只有我老婆,父母在老家无法分身,故下班后我 没有连续的空闲时间专心投入一项任务中,而开源最需要的是精益求精,不只是需要完成功 能,而是要编写结构优良的代码,设计所占据的时间比代码开发时间要多的多,故我个人认 为我暂时不方便走代码贡献这条道路。但我零碎时间还是充足的,故现阶段我会好好利用这 开源社区的方式 接下来我们回到本节的主题,那如何参与一个开源项目呢? 在参与一个开源项目之前,我觉得第一个最基本的步骤还是要打牢基础,这里的基础至 少要包括 JAVA 集合、JAVA 并发(JUC)这两项,只是最最基本的,至少要阅读其源码, 理解其设计理念,至于 NIO,Netty 这些可以后续在需要使用时再去专门学习,有针对性 的学习,有使用需求,或许学习动力更强劲,学习效率更高效。 当具备一 提供了并发消费、顺序消费两种消费模型。 并发消费:对一个队列中消息,每一个消费者内部都会创建一个线程池,对队列中的消 息多线程处理,即偏移量大的消息比偏移量小的消息有可能先消费。 顺序消费:在某一项场景,例如 MySQL binlog 场景,需要消息按顺序进行消费。在 RocketMQ 中提供了基于队列的顺序消费模型,即尽管一个消费组中的消费者会创建一个 多线程,但针对同一个 Queue,会加锁。0 码力 | 165 页 | 12.53 MB | 1 年前3 Apache RocketMQ 从入门到实战提交一个文档被接受也同样可以,难的是持续贡献,最终被开源项目的 PMC 认为对该项目 有着突出贡献。 我比较“苦逼”,在带娃方面我的资源只有我老婆,父母在老家无法分身,故下班后我 没有连续的空闲时间专心投入一项任务中,而开源最需要的是精益求精,不只是需要完成功 能,而是要编写结构优良的代码,设计所占据的时间比代码开发时间要多的多,故我个人认 为我暂时不方便走代码贡献这条道路。但我零碎时间还是充足的,故现阶段我会好好利用这 开源社区的方式 接下来我们回到本节的主题,那如何参与一个开源项目呢? 在参与一个开源项目之前,我觉得第一个最基本的步骤还是要打牢基础,这里的基础至 少要包括 JAVA 集合、JAVA 并发(JUC)这两项,只是最最基本的,至少要阅读其源码, 理解其设计理念,至于 NIO,Netty 这些可以后续在需要使用时再去专门学习,有针对性 的学习,有使用需求,或许学习动力更强劲,学习效率更高效。 当具备一 提供了并发消费、顺序消费两种消费模型。 并发消费:对一个队列中消息,每一个消费者内部都会创建一个线程池,对队列中的消 息多线程处理,即偏移量大的消息比偏移量小的消息有可能先消费。 顺序消费:在某一项场景,例如 MySQL binlog 场景,需要消息按顺序进行消费。在 RocketMQ 中提供了基于队列的顺序消费模型,即尽管一个消费组中的消费者会创建一个 多线程,但针对同一个 Queue,会加锁。0 码力 | 165 页 | 12.53 MB | 1 年前3
 王强-Apache RocketMQ事务消息Apache RocketMQ 存储设计 Apache RocketMQ http://rocketmq.apache.org • ⾼高性能,分布式 • ⾼高并发 • 消息堆积 • Apache顶级项⽬目 发展历史 2013� Open Source Massive accumulation Orderly messaging 2014� Industry Ready 194 互操作性,易易部署,可监控管理理 消息系统挑战 • 传统设计和实现⽅方⾯面 • 组件的微服务化,例例如存储和计算分离 • 开源软件的冲击,云服务选型⾯面临挑战 • 缺少稳定的多语⾔言类库 • Cloud AI Ops⽅方⾯面 • 容器器化部署,K8S编排 • 诸如IoT/IIoT新场景下的规模化部署能⼒力力不不⾜足 • HTTP/RESTful/JSON 灵活调⽤用,监控及运维能⼒力力不不⾜足0 码力 | 34 页 | 6.17 MB | 1 年前3 王强-Apache RocketMQ事务消息Apache RocketMQ 存储设计 Apache RocketMQ http://rocketmq.apache.org • ⾼高性能,分布式 • ⾼高并发 • 消息堆积 • Apache顶级项⽬目 发展历史 2013� Open Source Massive accumulation Orderly messaging 2014� Industry Ready 194 互操作性,易易部署,可监控管理理 消息系统挑战 • 传统设计和实现⽅方⾯面 • 组件的微服务化,例例如存储和计算分离 • 开源软件的冲击,云服务选型⾯面临挑战 • 缺少稳定的多语⾔言类库 • Cloud AI Ops⽅方⾯面 • 容器器化部署,K8S编排 • 诸如IoT/IIoT新场景下的规模化部署能⼒力力不不⾜足 • HTTP/RESTful/JSON 灵活调⽤用,监控及运维能⼒力力不不⾜足0 码力 | 34 页 | 6.17 MB | 1 年前3
 Apache RocketMQ on Amazon Web ServicesApache RocketMQ 是一款 java 语言开发的开源的、分布式的消息投递与流数据平台。 最早于 2016 年由阿里巴巴捐献给了 Apache 基金会,2017 年成为 Apache 的 顶级项 目,RocketMQ 具有低延迟,金融级高可用以及厂商中立的特点,目前广泛使用于国内 外的互联网公司。针对 AMAZON WEB SERVICES 客户需要在 AMAZON WEB SERVICES 其他区域使用此方案,请点击此处 2. 确保您的账⼾下的 Elastic IP ,VPC , EC2 ,Auto Scaling Group,NAT Gateway, EBS 等没有达到上限。如果某一项您已经达到上限,请向后台提交⼯单选择申 请提高限制。 3. 如果在该区域内您还没有密钥对,请在 Amazon EC2 控制台的导航窗格中,依 次选择密钥对、创建密钥对,选择默认的.pem 格式,键⼊名称,然后选择创建 AvailabilityZones 必填项 ⼦网可用区的列表。 您指定的 逻辑顺序会被保留。此部署使用 Page 8 of 18 2 个或 3 个可用区。完 成选择 后,请确保“可用区数量”参数 与 您此处的选择是一致的。 2 Number of Availability Zones NumberOfAZs 必填项 要在 VPC0 码力 | 18 页 | 1.55 MB | 1 年前3 Apache RocketMQ on Amazon Web ServicesApache RocketMQ 是一款 java 语言开发的开源的、分布式的消息投递与流数据平台。 最早于 2016 年由阿里巴巴捐献给了 Apache 基金会,2017 年成为 Apache 的 顶级项 目,RocketMQ 具有低延迟,金融级高可用以及厂商中立的特点,目前广泛使用于国内 外的互联网公司。针对 AMAZON WEB SERVICES 客户需要在 AMAZON WEB SERVICES 其他区域使用此方案,请点击此处 2. 确保您的账⼾下的 Elastic IP ,VPC , EC2 ,Auto Scaling Group,NAT Gateway, EBS 等没有达到上限。如果某一项您已经达到上限,请向后台提交⼯单选择申 请提高限制。 3. 如果在该区域内您还没有密钥对,请在 Amazon EC2 控制台的导航窗格中,依 次选择密钥对、创建密钥对,选择默认的.pem 格式,键⼊名称,然后选择创建 AvailabilityZones 必填项 ⼦网可用区的列表。 您指定的 逻辑顺序会被保留。此部署使用 Page 8 of 18 2 个或 3 个可用区。完 成选择 后,请确保“可用区数量”参数 与 您此处的选择是一致的。 2 Number of Availability Zones NumberOfAZs 必填项 要在 VPC0 码力 | 18 页 | 1.55 MB | 1 年前3
 快速部署高可用的Apache RocketMQ 集群 - Amazon S3其他区域使⽤此⽅案,请点击此处 2. 确保您的账⼾下的 Elastic IP ,VPC , EC2 ,Auto Scaling Group,NAT Gateway,EBS 等没有达到上限。如果某⼀项您已经达到上限,请向后台提交 ⼯单选择申请提⾼限制。 3. 如果在该区域内您还没有密钥对,请在 Amazon EC2 控制台的导航窗格中, 依次选择密钥对、创建密钥对,选择默认的.pem 格式,键⼊名称,然后选择 AvailabilityZones 必填项 ⼦⽹可⽤区的列表。 您指定的 逻辑顺序会被保留。此部署使⽤ 2 个或 3 个可⽤区。完 成选择 后,请确保“可⽤区数量”参数 与您此处的选择是⼀致的。 2 Number of Availability Zones NumberOfAZs 必填项 要在 VPC 中使⽤的可⽤区的数 量 (2 可⽤区 3 中的公有⼦⽹的 CIDR 块。 10 Allowed Bastion External Access CIDR RemoteAccessCIDR 必填项 允许对堡垒主机进⾏外部 SSH 访问的 CIDR IP 范围。我们建 议您 将此值设置为受信任的 IP 范围。例如,您可能希望仅对公 司⽹ 络 IP 段授予访问权限。如 果允许所有的外部主机访问,可0 码力 | 21 页 | 2.57 MB | 1 年前3 快速部署高可用的Apache RocketMQ 集群 - Amazon S3其他区域使⽤此⽅案,请点击此处 2. 确保您的账⼾下的 Elastic IP ,VPC , EC2 ,Auto Scaling Group,NAT Gateway,EBS 等没有达到上限。如果某⼀项您已经达到上限,请向后台提交 ⼯单选择申请提⾼限制。 3. 如果在该区域内您还没有密钥对,请在 Amazon EC2 控制台的导航窗格中, 依次选择密钥对、创建密钥对,选择默认的.pem 格式,键⼊名称,然后选择 AvailabilityZones 必填项 ⼦⽹可⽤区的列表。 您指定的 逻辑顺序会被保留。此部署使⽤ 2 个或 3 个可⽤区。完 成选择 后,请确保“可⽤区数量”参数 与您此处的选择是⼀致的。 2 Number of Availability Zones NumberOfAZs 必填项 要在 VPC 中使⽤的可⽤区的数 量 (2 可⽤区 3 中的公有⼦⽹的 CIDR 块。 10 Allowed Bastion External Access CIDR RemoteAccessCIDR 必填项 允许对堡垒主机进⾏外部 SSH 访问的 CIDR IP 范围。我们建 议您 将此值设置为受信任的 IP 范围。例如,您可能希望仅对公 司⽹ 络 IP 段授予访问权限。如 果允许所有的外部主机访问,可0 码力 | 21 页 | 2.57 MB | 1 年前3
 RocketMQ v3.2.4 开发指南slotNum=5000000)。 2. 根据 slotValue(slot 位置对应的值)查找到索引项列表的最后一项(倒序排列,slotValue 总是挃吐最新的一个 项目开源主页:https://github.com/alibaba/RocketMQ 21 索引项)。 3. 遍历索引项列表迒回查询时间范围内的结果集(默讣一次最大迒回的 32 条记彔) 4. Hash 冲突;寻找 key 值丌同但模数相同,此时查询的时候会在比较一次 key 的 hash 值(每个索引项保存了 key 的 hash 值),过滤掉 hash 值丌相等的项。第二种,hash 值相等但 key 丌等, 出亍性能的考虑冲突的检测放到客户端处理(key 的原始值是存储在消息文件中的,避免对数据文件的解析), 客户端比较一次消息体的 key 是否相同。 5. 存储;为了节省空间索引项中存储的时间是时间差值(存储时间-开始时间,开始时间存储在索引文件头中), broker.p ### 第三步加载修改过的配置文件 nohup sh mqbroker -c broker.p Broker 运行过程中,劢态改变 Broker 的配置,注意,并非所有配置项都支持劢态变更 ### 修改地址为 192.168.1.100:10911 的 Broker 消息保存时间为 24 小时 sh mqadmin updateBrokerConfig -b 1920 码力 | 52 页 | 1.61 MB | 1 年前3 RocketMQ v3.2.4 开发指南slotNum=5000000)。 2. 根据 slotValue(slot 位置对应的值)查找到索引项列表的最后一项(倒序排列,slotValue 总是挃吐最新的一个 项目开源主页:https://github.com/alibaba/RocketMQ 21 索引项)。 3. 遍历索引项列表迒回查询时间范围内的结果集(默讣一次最大迒回的 32 条记彔) 4. Hash 冲突;寻找 key 值丌同但模数相同,此时查询的时候会在比较一次 key 的 hash 值(每个索引项保存了 key 的 hash 值),过滤掉 hash 值丌相等的项。第二种,hash 值相等但 key 丌等, 出亍性能的考虑冲突的检测放到客户端处理(key 的原始值是存储在消息文件中的,避免对数据文件的解析), 客户端比较一次消息体的 key 是否相同。 5. 存储;为了节省空间索引项中存储的时间是时间差值(存储时间-开始时间,开始时间存储在索引文件头中), broker.p ### 第三步加载修改过的配置文件 nohup sh mqbroker -c broker.p Broker 运行过程中,劢态改变 Broker 的配置,注意,并非所有配置项都支持劢态变更 ### 修改地址为 192.168.1.100:10911 的 Broker 消息保存时间为 24 小时 sh mqadmin updateBrokerConfig -b 1920 码力 | 52 页 | 1.61 MB | 1 年前3
 rocketmq 服务部署0.00(0,0 s) 0.00(0,0ms) 0 453367.41 -1.0000 单机部署 部署rocketmq-console可视化监控 1、git clone git@github.com:apache/rocketmq-externals.git 2、cd rocketmq-externals 3、git checkout0 码力 | 11 页 | 284.35 KB | 1 年前3 rocketmq 服务部署0.00(0,0 s) 0.00(0,0ms) 0 453367.41 -1.0000 单机部署 部署rocketmq-console可视化监控 1、git clone git@github.com:apache/rocketmq-externals.git 2、cd rocketmq-externals 3、git checkout0 码力 | 11 页 | 284.35 KB | 1 年前3
 Apache RocketMQ 介绍configurations Supported, rich web and terminal command to expose co e metrics 文献参照 ● RocketMQ与Kafka对比(18项差异) ● 技术选型:RocketMQ or Kafka ● Apache Kafkaに入門した 原文链接:Apache RocketMQ 介绍 ● 解决KafKa数据存储与顺序一致性保证 ●0 码力 | 5 页 | 375.48 KB | 1 年前3 Apache RocketMQ 介绍configurations Supported, rich web and terminal command to expose co e metrics 文献参照 ● RocketMQ与Kafka对比(18项差异) ● 技术选型:RocketMQ or Kafka ● Apache Kafkaに入門した 原文链接:Apache RocketMQ 介绍 ● 解决KafKa数据存储与顺序一致性保证 ●0 码力 | 5 页 | 375.48 KB | 1 年前3
共 7 条
- 1













