接触 kafka 有一段时间了,一个人的力量实在有限,国内 rocketmq 的生态确实更好,决定换方向。

rocketmq 文档地址:http://rocketmq.cloud/zh-cn/docs/bestpractice-broker.html

windows 环境下测试,

启动 nameserver:

mqnamesrv.cmd -n localhost:9876

启动 broker:

mqbroker.cmd -n localhost:9876

创建 topic,创建的 topic 默认 8 个分区:

mqadmin.cmd updateTopic -n localhost:9876 -b localhost:10911 -t TopicTest

查看 topic 分区信息:

mqadmin.cmd topicStatus -n localhost:9876 -t TopicTest

根据分区 offset 查询消息:

mqadmin.cmd queryMsgByOffset -n localhost:9876 -b zhang -i 0 -o 30 -t TopicTest

windows 单机部署 2m

----------- broker-a.propertes
listenPort=10911
namesrvAddr=localhost:9876
storePathRootDir=D:\\tools\\rocketmq-all-4.3.2-bin-release\\store
storePathCommitLog=D:\\tools\\rocketmq-all-4.3.2-bin-release\\store\\commitlog ----------- broker-b.propertes
listenPort=20911
namesrvAddr=localhost:9876
storePathRootDir=D:\\tools\\rocketmq-all-4.3.2-bin-release\\store2
storePathCommitLog=D:\\tools\\rocketmq-all-4.3.2-bin-release\\store2\\commitlog

启动

mqbroker.cmd -c ../conf/2m-noslave/broker-a.properties
mqbroker.cmd -c ../conf/2m-noslave/broker-b.properties

集群环境下,创建 topic:

mqadmin.cmd updateTopic -n localhost:9876 -c DefaultCluster -t topic-zhang

这样会在 2 个 master 上分别创建 8 个分区。代码逻辑在 org.apache.rocketmq.tools.command.topic.UpdateTopicSubCommand#execute 中。

转战 rocketmq的更多相关文章

  1. RocketMQ原理解析-Remoting

    Remoting2. 通信层底层传输协议 RocketMq服务器与客户端通过传递RemotingCommand来交互,通过NettyDecoder,对RemotingCommand进行协议的编码与解码 ...

  2. RocketMQ原理解析-Broker

    broker 1. broker的启动 brker的启动 Broker向namesrv注册 1. 获取namesrv的地址列表(是乱序的) 2. 遍历向每个namesrv注册topic的配置信息top ...

  3. RocketMQ原理解析-Consumer

    consumer 1.启动 有别于其他消息中间件由broker做负载均衡并主动向consumer投递消息,RocketMq是基于拉模式拉取消息,consumer做负载均衡并通过长轮询向broker拉消 ...

  4. RocketMQ原理解析-Producer

    producer  producer 1.启动流程 Producer如何感知要发送消息的broker即brokerAddrTable中的值是怎么获得的, 1. 发送消息的时候指定会指定topic,如果 ...

  5. 分布式开放消息系统(RocketMQ)的原理与实践

    分布式消息系统作为实现分布式系统可扩展.可伸缩性的关键组件,需要具有高吞吐量.高可用等特点.而谈到消息系统的设计,就回避不了两个问题: 消息的顺序问题 消息的重复问题 RocketMQ作为阿里开源的一 ...

  6. rocketmq生产者和消费者

    1.生产者: package com.ebways.mq.test.mq; import com.alibaba.rocketmq.client.exception.MQClientException ...

  7. rocketmq查看命令

    首先进入 RocketMQ 工程,进入/RocketMQ/bin   在该目录下有个 mqadmin 脚本 .  查看帮助:   在 mqadmin 下可以查看有哪些命令    a: 查看具体命令的使 ...

  8. rocketmq生产者部署的机器注意事项

    报错: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'warningP ...

  9. Kafka vs RocketMQ——多Topic对性能稳定性的影响-转自阿里中间件

    引言 上期我们对比了RocketMQ和Kafka在多Topic场景下,收发消息的对比测试,RocketMQ表现稳定,而Kafka的TPS在64个Topic时可以保持13万,到了128个Topic就跌至 ...

随机推荐

  1. 区块链开源实现hyperledger fabric架构详解

    hyperledger fabric是区块链中联盟链的优秀实现,主要代码由IBM.Intel.各大银行等贡献,目前v1.1版的kafka共识方式可达到1000/s次的吞吐量.本文中我们依次讨论:区块链 ...

  2. SpringMVC源码解析

    一:springmvc运行过程: 1. dispatcherServlet 通过 HandlerMapping 找到controller2. controller经过后台逻辑处理得到结果集modela ...

  3. scala学习笔记(7)

    1.包 --------------------------------------- Scala中的包和Java或者C++中命名空间的目的是相同的:管理大型程序中的名称. package a{ pa ...

  4. JavaEE高级-Spring Data学习笔记

    Spring Data概述 - Spring Data : Spring 的一个子项目.用于简化数据库访问,支持NoSQL 和 关系数据存储.其主要目标是使数据库的访问变得方便快捷. - Spring ...

  5. python 导入模块、包

    1. 模块:一个有逻辑的python文件,包含变量.函数.类等.2. 包:一个包含__init__.py的文件夹,存放多个模块 import 本质是路径搜索,查找sys.path下有无你导入的 pac ...

  6. java tomcat虚拟目录的深入了解

    我们知道,Web网站中的内容(包括网页,图片,音频文件等)一般都存放在App的目录下.但随着网站内容的不断丰富,用户需要把不同层次的内容组织成网站的子目录.我们通常的做法是在网站主目录下新建子目录,并 ...

  7. FAT12

    FAT12 is one of FAT file system families,mostly used on 1.44MB floppy disk. FAT 's full name is File ...

  8. Vscode中解决Html文件中不能打断点问题

    Vscode中解决Html文件中不能打断点问题: 默认情况下,VSCode是不能在Html文件里打断点的,但是可以修改设置,依次打开:文件->首选项->设置,然后功能->调试-> ...

  9. django搭建一个小型的服务器运维网站-查看服务器中的日志与前端的datatable的利用

    目录 项目介绍和源码: 拿来即用的bootstrap模板: 服务器SSH服务配置与python中paramiko的使用: 用户登陆与session; 最简单的实践之修改服务器时间: 查看和修改服务器配 ...

  10. Django【第22篇】:基于Ajax实现的登录

    基于ajax实现的登录 一.需要知道的新知识点 1.刷新验证码.给src属性加一个?号.加个?会重新去请求 //#给验证码刷新 $(".vialdCode_img").click( ...