# helm-rocketmq **Repository Path**: wangfasheng/helm-rocketmq ## Basic Information - **Project Name**: helm-rocketmq - **Description**: helm - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 8 - **Created**: 2023-07-12 - **Last Updated**: 2023-07-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## ROCKETMQ安装使用文档 **一、基本知识简要说明** RocketMQ主要有四大组成部分:NameServer、Broker、Producer、Consumer。 **Nameserver作用:** NameServer 可以说是 Broker 的注册中心,Broker 在启动的时候,会根据配置信息向所有的 NameServer 进行注册,NameServer 会和每次前来注册的 Broker 保持长连接,并每 30s 检查 Broker 是否还存活,对于宕机的 Broker,NameServer 会将其从列表中剔除。当生产者需要向 Broker 发送消息的时候,就会先从 NameServer 里面获取 Broker 的地址列表,然后[负载均衡](https://cloud.tencent.com/product/clb?from=10680),选择一台消息服务器进行发送。 **RocketMQ的部署方式有多种:** - 2m-noslave: 多Master模式,无Slave。[双主模式] - 2m-2s-sync: 多Master多Slave模式,同步双写 [双主双从+同步模式] - 2m-2s-async:多Master多Slave模式,异步复制 [双主双从+异步模式] **RocketMQ 提供了三种方式发送消息:同步、异步和单向:** - 同步发送: 指消息发送方发出数据后会在收到接收方发回响应之后才发下一个数据包。 - 异步发送: 指发送方发出数据后,不等接收方发回响应,接着发送下个数据包, 异步方式也需要Broker返回确认信息。 - 单向发送: 指只负责发送消息而不等待服务器回应且没有回调函数触发。 **RocketMQ 三种消息发送模式的使用场景:** 具体使用哪种模式,这主要是看应用场景。 - 同步发送:主要运用在比较重要一点消息传递/通知等业务: - 异步发送:通常用于对发送消息响应时间要求更高/更快的场景: - 单向发送:适用于某些耗时非常短,但对可靠性要求并不高的场景,例如日志收集。只发送消息,不等待服务器响应,只发送请求不等待应答。此方式发送消息的过程耗时非常短,一般在微秒级别。 **RocketMQ端口:** - rocketmq 默认端口:9876(即nameserver端口) - 非vip通道端口:10911 - vip通道端口:10909 - 10909是VIP通道对应的端口,在JAVA中的消费者对象或者是生产者对象中关闭VIP通道即可无需开放10909端口 相关资源的下载地址: rocketmq下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/ ​ rocketmq的ui地址如下: https://github.com/apache/rocketmq-externals #### 镜像制作 docker build -t harbor.assistfc.com/middleware/rocketmq:4.9.0 . docker build -t harbor.assistfc.com/middleware/rocketmq-nameserver:4.9.0 . rocketui 镜像获取 docker pull harbor.assistfc.com/middleware/rocketmq-console:2.0.0 推送到私有仓库: ​ docker push harbor.assistfc.com/middleware/rocketmq-nameserver:4.9.0 ​ docker push harbor.assistfc.com/middleware/rocketmq:4.9.0 #### helm部署RocketMQ 以及RocketMQ-ui clone仓库,通过如下命令安装: helm install dev-rocketmq --namespace=dev-rocketmq rocketmq/ #### 访问页面进行访问 #### 配置修改方式 1.通过打镜像的文件修改 2.通过edit configmap进行修改