tcprstat分析服务的响应速度利器

简介:
tcprstat是percona用来监测mysql响应时间的。不过对于任何运行在TCP协议上的响应时间,都可以用。

下面是一个监控示例,监控分析mysql的3306端口。


$sudo tcprstat -p 3306 -t 1 -n 5
timestamp   count   max min avg med stddev  95_max  95_avg  95_std  99_max  99_avg  99_std
1283261499  1870    559009  39  883 153 13306   1267    201 150 6792    323 685
1283261500  1865    25704   29  578 142 2755    889 175 107 23630   333 1331
1283261501  1887    26908   33  583 148 2761    714 176 94  23391   339 1340
1283261502  2015    304965  35  624 151 7204    564 171 79  8615    237 507
1283261503  1650    289087  35  462 146 7133    834 184 120 3565    244 358


根据上面的信息,我们可以知道mysql在我们检测期间,对于客户端查询的最大响应时间是559009(单位微妙),即0.559009秒。

你也可以读取tcpdump的文件进行分析。


$sudo tcpdump -i eth0 -nn port 80  -w ./tcpdump.log 
$sudo tcprstat -l 10.234.9.103 -t 2 -n 5 -r ./tcpdump.log 
timestamp       count   max     min     avg     med     stddev  95_max  95_avg  95_std  99_max  99_avg  99_std
1403180482      2       28017   26717   27367   28017   650     26717   26717   0       26717   26717   0
1403180484      0       0       0       0       0       0       0       0       0

注意:
如果运行的时候提示 pcap: SIOCGIFFLAGS: bonding_masters: No such device。那说明没能自动提取服务器ip。需要使用-l参数手动指定。

安装tcprstat
如果是在64位操作系统中使用,可以直接下载二进制文件使用。步骤如下:
1、下载文件 http://github.com/downloads/Lowercases/tcprstat/tcprstat-static.v0.3.1.x86_64
2、把下载的文件移动到 /usr/bin
3、把文件名修改为 tcprstat
4、修改文件权限,增加执行权限 chmod +x /usr/bin/tcprstat
如果你想在32位操作系统中使用,那你只能自己编译了。代码下载地址 https://github.com/Lowercases/tcprstat https://launchpad.net/tcprstat


参数说明


命令行参数    简短形式   类型      描述                    默认值
--format    -f        字符串     输出格式化字符串  ”%T\t%n\t%M\t%m\t%a\t%h\t%S\t%95M\t%95a\t%95S\t%99M\t%99a\t%99S\n” 
--help                          显示帮助信息
--interval  -t        数字      监控多少秒输出一次统计     10
--iterations  -n      数字      共输出几次统计信息         1
--local       -l      字符串    本级ip地址列表
--port        -p      数字      服务端口
--read        -r      字符串    pcap文件路径
--version                      显示版本信息
--no-header           字符串    输出不显示头信息
--header              字符串    指定输出的头信息



目录
相关文章
|
Oracle 关系型数据库 数据库
OceanBase数据库常见问题之租户创建后想要改字符集如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
JavaScript 前端开发 开发者
Element-UI快速入门
Element-UI快速入门Element-UI快速入门
1251 0
Element-UI快速入门
|
SQL 存储 Oracle
SQL优化2020最全干货总结---MySQL
BATJTMD等大厂的面试难度越来越高,但无论从大厂还是到小公司,一直未变的一个重点就是对SQL优化经验的考察。一提到数据库,先“说一说你对SQL优化的见解吧?”。
30743 2
|
Linux C语言 Python
Linux对稀疏(Sparse)文件的支持
稀疏(Sparse)文件的创建 在EXT2/EXT3文件系统上可以使用dd创建稀疏文件: $ dd if=/dev/zero of=fs.img bs=1M seek=1024 count=00+0 records in0+0 records out$ ls -lh fs.
1284 0
|
SQL 缓存 关系型数据库
mysql悬挂事务问题
本文将和大家分享IDB在执行事务的过程中出现问题的排查经过,主要包括原理和实践两部分。
584 0
mysql悬挂事务问题
|
存储 关系型数据库 MySQL
MySQL 8.0.30动态redo log初探
MySQL 8.0.30全新的动态redo log玩法探秘
481 0
|
SQL 关系型数据库 MySQL
随笔:MySQL:eq_range_index_dive_limit 索引下探接口
我的测试记录 一、概述 这个参数会影响到执行计划在评估的时候到底使用统计数据还是进行实际的所以你访问,那么很显然如下: 使用统计数据生成执行计划的效率更高。 使用索引实际访问,及索引下探会代价更高但是更加准确。
5205 0
|
关系型数据库 Shell 数据库
MySQL损坏page问题分析
背景 MySQL5.7.21 Centos 7.4 innodb_force_recovery=0 信息收集 MySQL物理备份报错 190425 11:58:54 >> log scanned up to (174805994673) 190425 11:58:55 >> log.
4418 0
|
算法 关系型数据库 MySQL
MySQL离线分析工具innochecksum
介绍 innochecksum打印InnoDB文件的校验和。此工具读取InnoDB表空间文件,计算每个页面的校验和,将计算的校验和与存储的校验和进行比较,并报告不匹配,这表明页面已损坏。它最初是为了在停电后加快验证表空间文件的完整性而开发的,但也可以在文件复制后使用。
2712 0

热门文章

最新文章