CentOS -- RocketMQ HA & Monitoring
RocketMQ Architecture
NameServer Cluster
Name Servers provide lightweight service discovery and routing. Each Name Server records full routing information, provides corresponding reading and writing service, and supports fast storage expansion, there is no replication among multi-NameServers.
Broker Cluster
Brokers take care of message storage by providing lightweight TOPIC and QUEUE mechanisms. They support the Push and Pull model, contains fault tolerance mechanism (2 copies or 3 copies), and provides strong padding of peaks and capacity of accumulating hundreds of billion messages in their original time order. In addition, Brokers provide disaster recovery, rich metrics statistics, and alert mechanisms, all of which are lacking in traditional messaging systems.
Producer Cluster
Producers support distributed deployment. Distributed Producers send messages to the Broker cluster through multiple load balancing modes. The sending processes support fast failure and have low latency.
Consumer Cluster
Consumers support distributed deployment in the Push and Pull model as well. It also supports cluster consumption and message broadcasting. It provides real-time message subscription mechanism and can meet most consumer requirements. RocketMQ’s website provides a simple quick-start guide to interested users.

HA Deployment Mode
RocketMQ supports various HA options for deployment. Please check out below chart for your reference:
|
Deployment Mode
|
Pros
|
Cons
|
Comments
|
|
|---|---|---|---|---|
|
Deployment Mode
|
Pros
|
Cons
|
Comments
|
|
| Single Master | Easy for Deployment and Maintenance | Single point of failure | feasible to Development environments only or for individual usage | |
| Multi-Masters |
Easy for configuration and high performance, there is no impact to applications in case of some of masters bouncing or crash. |
unconsumed messages on the failed masters cannot be subscribed until the failure got fixed. |
Can be used in dev enviorments, better than #1 | |
| Multi-Masters/Slaves Async | No impact to applications even if some of masters got crashed. The failover is transparent to aplications | Some messages may got lost after failover due to the async. | ||
| Multi-Masters/Slaves Sync | Grantee no messages lost even if some of masters got crashed. The failover is transparent to aplications | Performance isn't as good as #3 |
Monitoring
- RocketMQ-Console
RocketMQ-Console is not bundled in any release, we can get it from github : apache/rocketmq-externals, it provide comprehensive monitoring information besed on web:
a. Cluster Status
b. Regular maintenance
c. Topic status
d. Producer/Consumers statistics
e. etc...
- Integrated with other monitoring tools with customized scripts, such as Zabbix or Nagios.
CentOS -- RocketMQ HA & Monitoring的更多相关文章
- CentOS -- RocketMQ 4.3.2 standalone Installation and Configuration
1 Download RockeMQ Package: You need to download it and put it to the OS Image. wget http://apache.c ...
- RocketMQ ACL使用指南
目录 1.什么是ACL? 2.ACL基本流程图 3.如何配置ACL 3.1 acl配置文件 3.2 RocketMQ ACL权限可选值 3.3.权限验证流程 4.使用示例 4.1 Broker端安装 ...
- CNCF CloudNative Landscape
cncf landscape CNCF Cloud Native Interactive Landscape 1. App Definition and Development 1. Database ...
- CNCF LandScape Summary
CNCF Cloud Native Interactive Landscape 1. App Definition and Development 1. Database Vitess:itess i ...
- SQL2043N 与 linux的randomize_va_space特性
自从数据库服务器从redhat4.6升级到redhat5.5之后,在使用TSM备份的时候偶尔会出现SQL2043N 查看错误: [db2inst1@limt ~]$ db2 ? SQL2043N S ...
- java.io.IOException: There appears to be a gap in the edit log. We expected txid ***, but got txid
方式1 原因:namenode元数据被破坏,需要修复解决:恢复一下namenode hadoop namenode -recover 一路选择Y,一般就OK了 方式2 Need to copy the ...
- NetScaler Best Practice With VMAC In A High Availability Configuration
NetScaler Best Practice With VMAC In A High Availability Configuration https://www.citrix.com/blogs/ ...
- Hadoop常用操作
Hadoop常用操作 1.Hadoop安装 略 2.Hadoop配置 略 3.Hadoop多目录配置 namenode和datanode节点下都可以进行多个目录的配置,但是意义不同.namenode的 ...
- linux命令详解之ls命令
ls命令概述 ls命令用于显示文件目录列表,和Windows系统下DOS命令dir类似.当执行ls命令时,默认显示的只有非隐藏文件的文件名.以文件名进行排序及文件名代表的颜色显示.当不加参数时,默认列 ...
随机推荐
- C#编程.异常处理(Exception Handling Statements)
C#语言包含结构化异常处理(Structured Exception Handling,SEH). throw The throw statement is used to signal the oc ...
- maven打包添加依赖
<plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <versio ...
- 三千字讲清TypeScript与React的实战技巧
很多时候虽然我们了解了TypeScript相关的基础知识,但是这不足以保证我们在实际项目中可以灵活运用,比如现在绝大部分前端开发者的项目都是依赖于框架的,因此我们需要来讲一下React与TypeScr ...
- cookbook_模块和包
1把模块按层次结构组织成包 只需确保每个目录中都定义了__init__.py即可. 2对所有符号的导入进行精确控制 当用户使用from module import * 语句时,我们希望对从模块或包中导 ...
- 《css的总结》
一.span标签:能让某几个文字或者某个词语凸显出来 <p> 今天是11月份的<span>第一天</span>,地铁卡不打折了 </p> 二.字体风格 ...
- Java编程基础阶段笔记 day06 二维数组
二维数组 笔记Notes 二维数组 二维数组声明 二维数组静态初始化与二位初始化 二维数组元素赋值与获取 二维数组遍历 二维数组内存解析 打印杨辉三角 Arrays工具类 数组中常见的异常 二维数组 ...
- Java集合系列(三):HashSet、LinkedHashSet、TreeSet的使用方法及区别
本篇博客主要讲解Set接口的三个实现类HashSet.LinkedHashSet.TreeSet的使用方法以及三者之间的区别. 注意:本文中代码使用的JDK版本为1.8.0_191 1. HashSe ...
- 去掉matlab图像显示刻度
图像显示后面加 set( gca, 'XTick', [], 'YTick', [] );
- 开启java之门
一.Java语言概述 Java语言诞生于1995年,由Sun公司推出. 2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:https://www.oracle.com Ja ...
- 如何使用Arrays工具类操作数组
介绍 我们要先知道Arrays 是什么. java.util.Arrays 类是 JDK 提供的一个工具类主要用来操作数组,比如数组的复制转换等各种方法,Arrays 的方法都是静态方法可以通过Arr ...