走着瞧网站 设计,广州外贸网站效果,vr网站制作,360安全网站怎么做号码认证RocketMQ 概述
Apache RocketMQ 是一个开源的分布式消息传递和流处理平台#xff0c;由阿里巴巴团队最初开发并捐赠给 Apache 软件基金会。它主要用于处理大规模消息的发送和接收#xff0c;支持高吞吐量、可扩展性强且具有高可用性的消息服务。
RocketMQ 的优势有以下几点…RocketMQ 概述
Apache RocketMQ 是一个开源的分布式消息传递和流处理平台由阿里巴巴团队最初开发并捐赠给 Apache 软件基金会。它主要用于处理大规模消息的发送和接收支持高吞吐量、可扩展性强且具有高可用性的消息服务。
RocketMQ 的优势有以下几点
高性能 RocketMQ 能够支持每秒处理百万级消息的高吞吐量满足企业级应用的需求。高可用性 支持故障转移和消息冗余保证消息不丢失实现99.999%的高可用性。可扩展性 结构支持水平扩展无需停机即可增加节点极大地提高了系统的灵活性和可扩展性。多语言客户端支持 除了JavaRocketMQ 还提供了 C、Python、Go 等多种语言的客户端满足不同开发需求。易于监控和维护 提供了丰富的监控指标和管理工具帮助运维人员轻松管理和监控消息系统的状态。
RocketMQ 是一个功能强大的消息中间件适用于需要高可靠性、高性能和高可扩展性的现代互联网、金融和电信等领域的企业级应用。
观测云
部署 DataKit
DataKit 是一个开源的、跨平台的数据收集和监控工具由观测云开发并维护。它旨在帮助用户收集、处理和分析各种数据源如日志、指标和事件以便进行有效的监控和故障排查。DataKit 支持多种数据输入和输出格式可以轻松集成到现有的监控系统中。
登录观测云控制台在「集成」 - 「DataKit」选择对应安装方式当前采用 Linux 主机部署 DataKit。 安装 RocketMQ Exporter
通过 RocketMQ Exporter 可以采集 RocketMQ 的指标信息并对外暴露。
拉取 rocketmq-exporter
git clone https://github.com/apache/rocketmq-exporter.git进入安装目录
cd rocketmq-exporter/构建安装包2选1
1构建 jar 包方式
mvn clean package构建完成进入 target 目录
cd target启动 jar 包 (替换命令行中 nameserverip 地址)
nohup java -jar target/rocketmq-exporter-0.0.2-SNAPSHOT.jar --rocketmq.config.namesrvAddrnameserverip:9876 2构建 Docker 镜像方式
mvn package -Dmaven.test.skiptrue docker:build使用镜像启动 Docker (替换命令行中 nameserverip 地址)
docker run -d --nethost --name rocketmq-exporter -p 5557:5557 docker.io/rocketmq-exporter --rocketmq.config.namesrvAddrnameserverip:9876测试 rocketmq-exporter 是否正常
curl http://127.0.0.1:5557/metrics采集 RocketMQ 指标
RocketMQ Exporter 暴露指标端口为5557可以直接通过 prom 采集器进行采集。进入 DataKit 安装目录 /usr/local/datakit/conf.d 复制 prom 目录下的配置文件并命名为 rocketmq.conf 。 示例如下
开启 DataKit Prometheus 插件复制 sample 文件
cd /usr/local/datakit/conf.d/prom
cp prom.conf.sample rocketmq.conf修改配置文件 rocketmq.conf
[[inputs.prom]]urls [http://127.0.0.1:5557/metrics]ignore_req_err falsesource rocketmq
# metric_types 需要选择空rocketmq-exporter 没有指定数据类型metric_types []interval 60s重启 DataKit
datakit service restart监控视图
登录观测云控制台点击「场景」 -「新建仪表板」输入 “RocketMQ” 选择“RocketMQ 监控视图”点击“确定”。 关键指标
序号指标名称指标描述1rocketmq_broker_tpsbroker每秒生产消息数量2rocketmq_broker_qpsbroker每秒消费消息数量3rocketmq_producer_tps某个topic每秒生产的消息数量4rocketmq_producer_message_size某个生产者发送消息的平均消息大小(字节)5rocketmq_producer_offset某个topic的生产消息的进度6rocketmq_consumer_tps某个消费组每秒消费的消息数量7rocketmq_consumer_message_size某个消费者拉取消息的平均消息大小(字节)8rocketmq_consumer_offset某个消费组的消费消息的进度9rocketmq_group_get_latency_by_storetime某个消费组的消费延时时间10rocketmq_group_diff消费组的消息积压量
rocketmq_broker_tps ( broker 每秒生产消息数量)
这个指标显示了每秒中 Broker 接收的消息数量是衡量消息生产活动高低的直接指标。监控这一指标可以帮助运维团队了解系统当前的负载能力和处理能力。
rocketmq_broker_qps ( broker 每秒消费消息数量)
相对于生产消息数量这个指标显示的是 Broker 每秒处理的消费请求数量。这不仅反映了消费者的活跃程度还可以用来评估 Broker 处理消费请求的效率。
rocketmq_producer_tps (某个 topic 每秒生产的消息数量)
特定 Topic 的生产速率能够帮助运维团队识别特定业务流的压力情况。通过监控这一指标可以及时发现某个业务线可能存在的问题或者性能瓶颈。
rocketmq_consumer_tps (某个消费组每秒消费的消息数量)
这个指标展示了消费组的消费能力通过监控可以了解消费组的处理效率和及时性。若消费速度跟不上生产速度可能需要扩展消费者数量或优化消费逻辑。
rocketmq_group_diff (消费组堆积量指标
这个指标展示了消费组的消息积压量通过监控可以了解某个消费组对指定 Topic 的未消费消息数量监控消费组的消费能力是否正常。
rocketmq_group_get_latency_by_storetime (某个消费组的消费延时时间)
这个指标显示了消息从存储到被消费组消费的延时。它是衡量消息系统响应能力的关键指标对于要求实时性较高的应用尤其重要。
监控器
1rocketmq_broker_tps ( broker 每秒生产消息数量)
阈值建议 如果您的系统通常运行在每秒1000条消息可以设置一个上限阈值为1500条下限阈值为500条。
监控告警
高阈值告警 如果 TPS 超过1500条/秒发送告警因为可能出现生产过载。低阈值告警 如果 TPS 低于500条/秒发送告警可能存在生产中断或性能下降。 2rocketmq_group_diff (消费组堆积量指标
阈值建议根据实际业务的吞吐量和消息处理需求设置阈值告警。 3rocketmq_consumer_tps (某个消费组每秒消费的消息数量)
阈值建议 如果正常消费速度为每秒800条可以设置一个阈值下限为400条。
监控告警
低阈值告警 如果消费 TPS 低于400条/秒发出告警。这可能意味着消费者处理能力不足或存在系统故障。 4rocketmq_group_get_latency_by_storetime (某个消费组的消费延时时间)
阈值建议 如果延时通常在5秒以内可以设置告警阈值为10秒。
监控告警如果延时超过10秒发送告警。高延时可能影响业务操作的实时性需检查并解决问题。