Apache RocketMQ 从入门到实战目录 开篇:我的另一种参与 RocketMQ 开源社区的方式 6 1.1 RocketMQ 核心概念扫盲篇 10 1.2 生产环境中,autoCreateTopicEnable 为什么不能设置为 true 18 1.3 实战:RocketMQ 学习环境搭建指南篇 28 1.4 RocketMQ HA 核心工作机制 39 1.5 踩坑记:rocketmq-console 消费 TPS 1.2 生产环境中,autoCreateTopicEnable 为什么不能设置为 true < 18 1.2 生产环境中,autoCreateTopicEn able 为什么不能设置为 true 一、现象 很多网友会问,为什么明明集群中有多台 Broker 服务器,autoCreateTopicEnable 设置为 true,表示开启 Topic 自动创建,但新创建的 Topic 的路由信息只包含在其中一台 broker-b 服务器创建队 列,不符合期望。 本文来自『中间件兴趣圈』公众号,仅作技术交流,未授权任何商业行为。 19 > 1.2 生产环境中,autoCreateTopicEnable 为什么不能设置为 true 默认读写队列的个数为 4。 我们再来看一下 RocketMQ 默认 topic 的路由信息截图如下: 从图中可以默认 Topic 的路由信息为 broker-a、broker-b0 码力 | 165 页 | 12.53 MB | 1 年前3
 消息中间件RocketMQ原理解析 - 斩秋的 事 物 状 态 LocalTransactionState 3) 二阶段,处理完本地事物中业务得到事物状态, 根据 offset 查找到 commitLog 中 的 prepared 消息,设置消息状态 commitType 或者 rollbackType , 让后将信息添加到 commitLog 中, 其实二阶段生成了两条消息 MessageExt> key 是消息在此 ConsumeQueue 队列中索引 (2) 对于顺序消息消费 处理 locked 属性:当 consumer 端向 broker 申请锁队列成功后设置 true, 只有被锁定 的 processqueue 才能被执行消费 rollback: 将消费在 msgTreeMapTemp 中的消息,放回 msgTreeMap 重新消费 commit: pullMessage(pullRequest)方法执行向 broker 拉消息动作 1. 获取 ProcessQueue 判读是否 drop 的, drop 为 true 返回 2. 给 ProcessQueue 设置拉消息时间戳 3. 流量控制,正在消费队列中消息(未被消费的)超过阀值,稍后在执行拉消息 4. 流量控制,正在消费队列中消息的跨度超过阀值(默认 2000),稍后在消费 5. 根据 topic0 码力 | 57 页 | 2.39 MB | 1 年前3
 RocketMQ v3.2.4 开发指南Consumer 实例,可以是多台机器,也可 以是多个迕程,戒者是一个迕程的多个 Consumer 对象。一个 Consumer Group 下的多个 Consumer 以均摊 方式消费消息,如果设置为广播方式,那举返个 Consumer Group 下的每个实例都消费全量数据。 6 RocketMQ 存储特点 6.1 零拷贝原理 Consumer 消费消息过程,使用了零拷贝,零拷贝包含以下两种方式 a) 访问 PAGECACHE 时,即使只访问 1k 的消息,系统也会提前预读出更多数据,在下次读时,就可能命 中内存。 b) 随机访问 Commit Log 磁盘数据,系统 IO 调度算法设置为 NOOP 方式,会在一定程度上将完全的随机 读发成顺序跳跃方式,而顺序跳跃方式读较完全的随机读性能会高 5 倍以上,可参见以下针对各种 IO 方式的性能数据。 http://stblog maxMessageSize 131072 客户端限制的消息大小,超过报错,同时 服务端也会限制 transactionCheckListener 事务消息回查监听器,如果发送事务消息, 必须设置 checkThreadPoolMinSize 1 Broker 回查 Producer 事务状态时,线程池 大小 checkThreadPoolMaxSize 1 Broker 回查0 码力 | 52 页 | 1.61 MB | 1 年前3
 Apache RocketMQ on Amazon Web ServicesRemoteAccessCIDR 必填项 允许对堡垒主机进⾏外部 SSH 访 问的 CIDR IP 范围。我们建议您 将此值设置为受信任的 IP 范 围。例如,您可能希望仅对公司 网 络 IP 段授予访问权限。如果 允许所有的外部主机访问,可以 设置为 0.0.0.0/0 Security Configuration 安全配置 11 Key Name KeyPairName BrokerClusterCount 3 选择部署 Apache RocketMQ Broker 节点的数量。 17 IOPS Iops 100 如果您选择的是 io1 卷类型,此 设置为 EBS 卷的 IOPS,否则此选 项将被忽略。 18 RocketMQ Version RocketMQVersion 4.7.1 选择部署的 Apache RocketMQ ASYNC_FLUSH Apache RocketMQ 的刷盘方式, 支持 ASYNC_FLUSH 和 SYNC_FLUSH 13 Iops Iops 100 如果您选择的是 io1 卷 类型,此 设置为 EBS 卷的 IOPS,否则此选 项将被忽略。 14 NameServerClu sterCount NameServerClusterCount 2 选择部署 Apache0 码力 | 18 页 | 1.55 MB | 1 年前3
 快速部署高可用的Apache RocketMQ 集群 - Amazon S3RemoteAccessCIDR 必填项 允许对堡垒主机进⾏外部 SSH 访问的 CIDR IP 范围。我们建 议您 将此值设置为受信任的 IP 范围。例如,您可能希望仅对公 司⽹ 络 IP 段授予访问权限。如 果允许所有的外部主机访问,可 以设置为 0.0.0.0/0 Security Configuration 安全配置 Page 10 of 21 Apache RocketMQ Broker 节点的数量。 Page 11 of 21 17 IOPS Iops 100 如果您选择的是 io1 卷类型,此 设置为 EBS 卷的 IOPS,否则此 选项将被忽略。 18 RocketMQ Version RocketMQVersion 4.7.1 选择部署的 Apache RocketMQ H Apache RocketMQ 的刷盘方 式,支持 ASYNC_FLUSH 和 SYNC_FLUSH 13 Iops Iops 100 如果您选择的是 io1 卷 类型, 此设置为 EBS 卷的 IOPS,否则 此选 项将被忽略。 14 NameServerC lusterCount NameServerClusterCou nt 2 选择部署 Apache0 码力 | 21 页 | 2.57 MB | 1 年前3
 rocketmq 服务部署是否允许broker自动创建Topic,生产建议关闭 autoCreateTopicEnable=true # 是否允许broker自动创建订阅组,生产建议关闭 autoCreateSubscriptionGroup=true # 设置brokerIp brokerIP1=192.168.166.20 原文链接:rocketmq 服务部署 # 存储路径 storePathRootDir=/Users/gitsilence/Ja 是否允许broker自动创建Topic,生产建议关闭 autoCreateTopicEnable=true # 是否允许broker自动创建订阅组,生产建议关闭 autoCreateSubscriptionGroup=true # 设置brokerIp brokerIP1=192.168.166.20 # 存储路径 storePathRootDir=/Users/gitsilence/JavaTools/rocketmq/data/store-b 4.9.2-SNAPSHOT/bin/mqnamesrv >> /root/rocketmq/logs namesrv/namesrv.log & Linux 环境下遇到的问题: ● 启动的时候设置内存太大,只是用来测试的话,我们可以改下启动脚本的内存配置, runserver.sh ● 还有一个就是脚本格式问题,会导致脚本执行不了,解决办法: https://blog.lacknb.cn/articles/0 码力 | 11 页 | 284.35 KB | 1 年前3
 docker-compose 安装 RocketMQcom/article/1607353262990 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0) 一、拉取镜像 docker pull rocketmqinc/rocketmq 二、设置网段 docker network create --driver bridge --subnet=172.10.0.0/16 --gateway=172.10.0.1 rmqnet firewall-cmd ipv4_address: 172.10.0.16 networks: default: external: name: rmqnet 四、设置broker.conf, ## vi /data/docker/rocketmq/conf/broker.conf brokerClusterName = DefaultCluster brokerName0 码力 | 3 页 | 135.58 KB | 1 年前3
共 7 条
- 1
 













