0006-Zookeeper指标分析
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
1. 问题描述
通过CDH管理平台,进入Zookeeper管理界面,Zookeeper的平均请求延迟、最小请求延迟、最大请求延迟指标趋势图维持不变,指标数据异常。
2.问题复现
- 登录CDH平台,进入Zookeeper管理页面,查看Zookeeper各服务器状态,页面如下:
- 查看如下指标
平均请求延迟、最小请求延迟、最大请求延迟三个指标维持不变,指标异常。
3.问题分析
3.1 指标来源
- 该指标是CDH通过ZookeeperJMX方式获取,具体参考Zookeeper官网
http://zookeeper.apache.org/doc/r3.5.3-beta/zookeeperJMX.html#ch_jmx
- 通过命令方式获取Zookeeper指标信息
通过以上分析可以判断指标数据非CDH计算得来,而是Zookeeper计算,排除CM问题;
3.2 分析Zookeeper源码
- 命令行调用Zookeeper监控指标代码片段(MonitorCommand.java)
通过查看源码,指标数据是通过ServerStats获取“请求延迟”指标
- 分析ServerStats代码,代码片段(ServerStats.java)
ServerStats只提供了updateLatency方法来更新maxLatency和minLatency指标。
- 调用更新ServerStats方法代码片段如下:(FinalRequestProcessor.java)
3.3 异常指标分析
通过分析代码,maxLatency和minLatency指标数据在Zookeeper服务器启动记录每次Request的指标数据;
在获取Zookeeper服务器的的maxLatency和minLatency指标记录服务器所有请求中最大请求延迟和最小请求延迟;
- 最大请求延迟指标
Zookeeper服务器1,在通过A请求更新ServerStats的maxLatency的指标值为100ms,在之后所有请求均未超过maxLatency为100ms的值。CDH平台每次获取Zookeeper服务器1的maxLatency指标时均为100ms,因此导致文章开头CDH平台Zookeeper的maxLatency指标维持不变“异常”。
- 最小请求延迟指标
Zookeeper服务器1,在通过A请求后更新ServerStats的minLatency的指标值为0ms,在之后所有请求均未小于minLatency为0ms的值。CDH平台每次获取Zookeeper服务器1的minLatency指标时均为0ms,因此导致文章开头CDH平台Zookeeper的minLatency指标为0ms维持不变的“异常”。
- 平均请求延迟指标
Zookeeper服务器1累计所有请求的延迟时间(totalLatency),累计总共请求次数(count),通过totalLatency/count获取avgLatency指标。至于avgLatency指标持续维持为0ms,由于totalLatency
由此推断多次请求Latency的延迟为0ms。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
超详细 Nginx 极简教程,傻瓜一看也会!
什么是Nginx? Nginx (engine x) 是一款轻量级的Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 什么是反向代理? 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 安装与使用 安装 nginx官网下载地址:http://nginx.org,发布版本分为 Linux 和 windows 版本。 也可以下载源码,编译后运行。 从源代码编译 Nginx 把源码解压缩之后,在终端里运行如下命令: 默认情况下,Nginx 会被安装在 /usr/local/nginx。通过设定编译选项,你可以改变这个设定。 Windows 安装 为了安装 Nginx / Win32,需先下载它。然后解压之,然后运行即可。下面以 C 盘根目录为例说明下: Nginx / Win32 是运行在一个控制台程序,而非 windows 服务方式的。服务器方式目前还是开发尝试中。 使用...
- 下一篇
Python数据科学“冷门”库
Python是一种神奇的语言。事实上,它是近几年世界上发展最快的编程语言之一,它一次又一次证明了它在开发工作和数据科学立场各行业的实用性。整个Python系统和库是对于世界各地的用户(无论是初学者或者高级)都是一个恰当的选择。其成功和受欢迎的原因之一是它强大的库,这些库使其具有动态性和快速性。 在本文中,我们将看到一些除了常用的像pandas、scikit-learn、 matplotlib之外的数据科学任务的Python库。虽然一看见像pandas,scikit-learn这些库就让人脑子浮现出机器学习任务,但了解并学习这个领域的其他python库总归是有益的。 1、Wget 从网页提取数据是数据科学家的重要任务之一。Wget是一个免费的非交互性的从网上下载文件的实用工具。它支持HTTP、HTTPS和FTP协议,以及通过HTTP代理检
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Mario游戏-低调大师作品
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用