首页 / 专利库 / 专利权 / 专利合作条约 / 第I章 / 国际检索单位 / 检索费 / 一种服务器性能数据采集与分析的方法

一种服务器性能数据采集与分析的方法

阅读:308发布:2021-12-11

专利汇可以提供一种服务器性能数据采集与分析的方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种 服务器 性能 数据采集 与分析的方法,是以数据采集和分析为核心,通过对采集方法和目标的 整理 和规范,形成标准化操作,将能够反映服务器性能的关键数据进行采集,以数据为依据,对服务器的各个子系统进行分析,从而找到服务器性能 瓶颈 ,为解决测试或者实际应用中提升服务器性能提供依据。,下面是一种服务器性能数据采集与分析的方法专利的具体信息内容。

1.一种服务器性能数据采集与分析的方法,其特征在于,以数据采集和分析 为核心,通过对采集方法和目标的整理和规范,形成标准化操作,将能够反映服 务器性能的关键数据进行采集,以数据为依据,对服务器的各个子系统进行分析, 从而找到服务器性能瓶颈,为解决测试或者实际应用中提升服务器性能提供依据, 具体步骤如下:
一、数据采集范围
1)在测试过程中,要记录整个测试过程中的测试数据,
2)确定性能监测的对象,包括各子系统,主要包括cpu,内存,磁盘,网络;
二、数据采集同步性
1)测试系统可能分为多层架构,在每一层架构上的数据收集要保证时间上的 同步,这样才能对系统运行期间的状态变化作出准确的描述;
2)各子系统的性能监测数据要保证时间上同步;
3)测试日志:在测试过程中,每一天都要完成测试日志,记录一天测试进程, 出现问题;
三、数据采集方法:
数据的采集,根据平台的不同,分为两类:Linux和windows,其中:
Linux系统,包括
1)性能监测工具
A)cpu,内存:vmstat
B)磁盘I/O:iostat
C)网络:sar
Windows系统
2)性能监测工具
按以下顺序,打开性能监视器:控制面板—>管理工具—>性能
四、测试数据整理
测试数据的整理,将测试数据表格化,或者图形化,为方便后续的分析做准备;
1)测试数据图形化
针对Linux系统,Linux系统下我们采集到的数据都是文本格式,需要我们把 这些数据图形化,便于后续的数据分析对比;
图形包括折线图或柱状图;
2)文件命名规则
命名规则:
A)尽量让文件名包含更多的文件信息;
B)格式:工具简称_平台信息_测试模型;
五、测试方法:
1)采样时间间隔:在同一次测试中,不同工具的采样时间间隔需要相等;
2)采点数值:采样点为数值N,
A)测试时间为1小时以下:150B)测试时间为1-2小时:2503)vmstat的使用:首先需要创建目录,用来存放测试数据:
[root@nodel~]# cd/tmp/
[root@nodel tmp]# mkdir test_vmstat
执行如下命令:[root@nodel tmp]#vmstat5n>/tmp/test_vmstat/file_name #每5秒钟取值一次,并将结果输出到文件中;
4)iostat的使用:首先需要创建目录,用来存放测试数据:命令如下:
[root@nodel~]# cd/tmp/
[root@nodel tmp]# mkdir test_iostat
执行如下命令:
[root@nodel tmp]# iostat-x5n|grep sdn>/tmp/test_iostat/file_name #每5秒钟取值一次,并将结果输出到文件中;
5)sar的使用:首先需要创建目录,用来存放测试数据:命令如下:
[root@nodel~]# cd/tmp/
[root@nodel tmp]# mkdir test_sar
执行如下命令:
[root@nodel tmp]# sar-n DEV5n|grep eth0>/tmp/test_sar/file_name #每5秒钟取值一次,并将结果输出到文件中;
六、windows性能监测工具:控制面板—>管理工具—>性能,使用步骤:
1)计数器日志:打开性能监测工具,点击性能日志和警报,选择计数器日志 完成此步骤,在右边工作区域看到有一个默认的系统日志文件:system overview
2)新建日志设置:在右侧的工作区域,右键点击,选择新建日志设置,弹出 对话框,填入日志名称;
3)添加计数器:单击添加计数器钮,弹出对话框,在性能对象里面,选择要 监测的对象,包括处理器,内存,网络;
每一个对象对应若干计数器,选中从列表中选择计数器,来添加需要的计数器 完成后,进行下一步
4)设置日志文件:以上步骤为常规设置,现在点击日志文件,进行日志文件 的设置;此处保留默认;
5)设置计划:设置为手动执行或根据需要,进行计划设置;
6)测试开始,启动,图标颜色有红色变为绿色;
新建日志完成,在计数器日志工作区就看到新建日志;红色图标为停止状态, 绿色为运行状态;选中日志,点击右键或手动执行开始与停止;
六测试数据解读与分析
关于Linux平台:测试过程中,通过vmstat,iostat,sar监视系统资源, 主要包括:进程,内存,swap,cpu,磁盘I/O以及网卡;
vmstat分析:关键参数:
1)进程:我们主要关注r与b参数:
r参数:运行队列线程数目,包括正在运行的线程和等待CPU时间片的线程, 这个数字大于CPU的数目,至少有一个线程要等待CPU,等待CPU的线程越多, 越有可能对性能产生影响;
b参数:每秒等待队列中的内核线程平均数,包括正在等待文件系统I/O的 线程,或由于内存装入控制而被挂起的线程;
进程由于内存装入控制而被挂起,在vmstat报告中的阻塞列(b)表明线程 数目增加,而不是运行队列中线程数目增加;
2)cpu:在该时间间隔内使用CPU时间的百分比细分,cpu列如下:
us参数:us列显示了用户模式所消耗的CPU时间;
sy参数:sy列详细显示了CPU在系统模式下执行一个线程所花时间的百分 比;
id参数:id列显示了没有未决磁盘I/O时CPU空闲或等待时间的百分 比,没有未决I/O,所有用于等待的时间归入空闲时间中;
wa参数:wa列详细显示了有未决磁盘I/O时CPU空闲的时间百分比,当等 待正在运行时至少有一个未完成的磁盘I/O,该时间归入等待I/O的时间,该 进程使用异步I/O,则对磁盘的I/O请求使调用线程被阻塞或睡眠,直到请求 被完成;一旦进程的I/O请求完成,该进程被放入运行队列中,I/O很快完成, 该进程使用更多的CPU时间;wa的值不应该超过25%;
3)其他参数
Memory
swpd:虚拟内存使用情况,单位:KB;
free:空闲的内存,单位KB
buff:被用来做为缓存的内存数,单位:KB;
Swap
si:从磁盘交换到内存的交换页数量,单位:KB/秒;
so:从内存交换到磁盘的交换页数量,单位:KB/秒;
IO
bi:发送到设备的块数,单位:块/秒;
bo:从块设备接收到的块数,单位:块/秒;
分析:
1)r远大于cpu的数目,系统就会变慢,r大于cpu数目的4倍,说明系统 正面临cpu功率短缺,系统会严重变慢;
2)id值经常为0,并且sy+us经常大于80%,说明系统cpu负荷过重或者 说缺少cpu资源;
3)wa值大于25%,说明磁盘没有被很好的平衡,系统花费大量时间等待磁盘 I/O或者磁盘的负荷很重;
4)linux首先使用物理内存,物理内存使用完后再使用swap分区,所以linux 系统一般内存利用率都比较高,si,so都等于0,说明swap分区未被使用;
改进方案:
1)调整应用,使其更好的利用cpu,增加cpu数目或者升高cpu主频;
2)优化磁盘,解决I/O问题;
iostat分析
关键参数:
rkB/s:每秒读K字节数,是rsect/s的一半,因为每扇区大小为512字节;
wkB/s:每秒写K字节数,是wsect/s的一半;
avgqu-sz:平均I/O队列长度;
await:平均每次设备I/O操作的等待时间(毫秒);
svctm:平均每次设备I/O操作的服务时间(毫秒);
%util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间 I/O队列是非空的;
分析:
1)磁盘显示长时间的高读写,同时svctm也远大于30,await的值也远大于 svctm,那么说明系统存在严重的磁盘I/O瓶颈;
2)%util一直接近100%,说明系统产生的I/O请求太多,系统可能存在磁盘瓶 颈;
3)wait的大小一般取决于服务时间svctm以及I/O队列的长度和I/O请求 的发出模式,svctm比较接近await,说明I/O几乎没有等待时间;await远大 于svctm,说明I/O队列太长,应用得到的响应时间变慢
改进方案:
1)调整应用,令其使用磁盘i/o更加有效率,通过修改磁盘队列、使用应用 服务器的cache;
2)将文件系统分布到2个或多个磁盘上,改变磁盘raid方案;
3)更换更好的盘阵或磁盘,使用更快的存储方案;
关于windows平台
Windows平台测试,要在性能监视器里面选定性能监视对象,然后为每一个监 视对象添加性能监测计数器,性能监测对象及每个对象包含的计数器如下:
1)processor处理器
Processor performance object包含衡量处理器活动方面的计数器,处理器 是计算机进行算数和逻辑计算、在附属件起始操作及运行处理线程的部分,一台 计算机有多台处理器,处理器对象将每台处理器作为对象的范例;
主要包含计数器:
%Processor Time—指处理器用来执行非闲置线程时间的百分比,计算方法 是,测量范例间隔内非闲置线程活动的时间,用范例间隔减去该值,该值是每台 处理器有一个闲置线程,该线程在没有其他线程时运行时的消耗周期,这个计数 器是处理器活动的主要说明器,显示在范例间隔时所观察的繁忙时间平均百分比, 这个值是用100%减去该服务不活动的时间计算出来的;
2)memory内存:Memory performance object由描述计算机上的物理和虚拟 内存行为的计数器组成,物理内存指计算机上的随机存取存储器的数量,虚拟内 存由物理内存和磁盘上的空间组成,许多内存计数器监视页面调度,过多的页面 调度引起拖延,会影响整个系统处理效率;
主要包含的计数器有:Available MBytes是指以MB表示的物理内存量,此 内存能立刻分配给一个进程或系统使用,它等于分配给待机、空闲和零分页列表 内存的总和;
3)Physical Disk硬盘:Physical Disk performance object包含监视计 算机上的硬盘或固定磁盘驱动器的计数器,磁盘用于存储文件、程序及分页数据 并且通过读取检索这些项目并通过记录写入对其进行更改,物理磁盘计数器的值 为逻辑磁盘值的总和;
主要包含的计数器有:Avg.Disk Queue Length指读取和写入请求的平均数;
%Disk Time指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百 分比;
4)Network Interface网络:Network Interface performance object包 括衡量通过一个TCP/IP网络连接发送和接收字节和数据包的速率的计数器,它 包括监督连接错误的计数器;
主要包含的计数器有:
Bytes Total/sec是在每个网络适配器上发送和接收字节的速率,包括字符 在内,Network Interface\\Bytes Received/sec是Network Interface\\Bytes Received/sec和Network Interface\\Bytes Sent/sec的总和;

说明书全文

技术领域

发明涉及一种计算机应用技术领域或涉及服务器应用性能测试验证领域,具 体地说是一种服务器性能数据采集与分析的方法

背景技术

服务器产品在涉及具体应用的时候,无论是在测试或者实际应用中,我们都需 要对性能数据进行采集分析,从而对对整个系统运行状况进行监控,尽早发现问 题。尤其是在系统应用性能下降,出现问题的时候,我们更需要对性能数据进行 采集,从而找到问题所在,解决问题。

发明内容

本发明的目的是提供一种服务器性能数据采集与分析的方法。
本发明的目的是按以下方式实现的,具体步骤如下:
一、数据采集范围
1)在测试过程中,要记录整个测试过程中的测试数据,
2)确定性能监测的对象,包括各子系统,主要包括cpu,内存,磁盘,网络;
二、数据采集同步性
1)测试系统可能分为多层架构,在每一层架构上的数据收集要保证时间上的 同步,这样才能对系统运行期间的状态变化作出准确的描述;
2)各子系统的性能监测数据要保证时间上同步;
3)测试日志:在测试过程中,每一天都要完成测试日志,记录一天测试进程, 出现问题;
三、数据采集方法:数据的采集,根据平台的不同,分为两类:Linux和 windows,其中:Linux系统
1)性能监测工具
A)cpu,内存:vmstat
B)磁盘I/O:iostat
C)网络:sar
Windows系统
2)性能监测工具:
按以下顺序,打开性能监视器:控制面板—>管理工具—>性能
四、测试数据整理:测试数据的整理,将测试数据表格化,或者图形化,为 方便后续的分析做准备;
1)测试数据图形化:针对Linux系统,Linux系统下我们采集到的数据都是 文本格式,需要我们把这些数据图形化,便于后续的数据分析对比;图形包括折 线图或柱状图;
2)文件命名规则:
A)尽量让文件名包含更多的文件信息;
B)格式:工具简称_平台信息_测试模型;
五、测试方法:
1)采样时间间隔:在同一次测试中,不同工具的采样时间间隔需要相等;
2)采点数值:采样点为数值N,
A)测试时间为1小时以下:150B)测试时间为1-2小时:2503)vmstat的使用:首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]#mkdir test_vmstat
执行如下命令:
[root@nodel tmp]# vmstat 5n>/tmp/test_vmstat/file_name
#每5秒钟取值一次,并将结果输出到文件中;
4)iostat的使用
首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]#mkdir test_iostat
执行如下命令:
[root@nodel tmp]#iostat-x5n|grep sdn>/tmp/test_iostat/file_name
#每5秒钟取值一次,并将结果输出到文件中;
5)sar的使用
首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]#mkdir test_sar
执行如下命令:
[root@nodel tmp]#sar-n DEV5n|grep eth0>/tmp/test_sar/file_name
#每5秒钟取值一次,并将结果输出到文件中;
六、windows性能监测工具:控制面板—>管理工具—>性能
使用步骤:
1)计数器日志:打开性能监测工具,点击性能日志和警报,选择计数器日志 完成此步骤,在右边工作区域看到有一个默认的系统日志文件:system overview
2)新建日志设置
在右侧的工作区域,右键点击,选择新建日志设置,弹出对话框,填入日志名 称;
3)添加计数器
单击添加计数器钮,弹出对话框,在性能对象里面,选择要监测的对象,包括 处理器,内存,网络;
每一个对象对应若干计数器,选中从列表中选择计数器,来添加需要的计数器 完成后,进行下一步
4)设置日志文件
以上步骤为常规设置,现在点击日志文件,进行日志文件的设置;
此处保留默认;
5)设置计划
设置为手动执行或根据需要,进行计划设置;
6)测试开始,启动,图标颜色有红色变为绿色;
新建日志完成,在计数器日志工作区就看到新建日志;红色图标为停止状态, 绿色为运行状态;
选中日志,点击右键或手动执行开始与停止;
六测试数据解读与分析
关于Linux平台:测试过程中,通过vmstat,iostat,sar监视系统资源, 主要包括:进程,内存,swap,cpu,磁盘I/O以及网卡;
vmstat分析:关键参数:
1)进程:我们主要关注r与b参数:
r参数:运行队列线程数目,包括正在运行的线程和等待CPU时间片的线程,这 个数字大于CPU的数目,至少有一个线程要等待CPU,等待CPU的线程越多,越 有可能对性能产生影响;
b参数:每秒等待队列中的内核线程平均数,包括正在等待文件系统I/O的 线程,或由于内存装入控制而被挂起的线程;进程由于内存装入控制而被挂起, 在vmstat报告中的阻塞列(b)表明线程数目增加,而不是运行队列中线程数目 增加;
2)cpu:在该时间间隔内使用CPU时间的百分比细分,cpu列如下:
us参数:us列显示了用户模式所消耗的CPU时间;
sy参数:sy列详细显示了CPU在系统模式下执行一个线程所花时间的百分 比;
id参数:id列显示了没有未决磁盘I/O时CPU空闲或等待时间的百分 比,没有未决I/O,所有用于等待的时间归入空闲时间中;
wa参数:wa列详细显示了有未决磁盘I/O时CPU空闲的时间百分比,当等 待正在运行时至少有一个未完成的磁盘I/O,该时间归入等待I/O的时间,该 进程使用异步I/O,则对磁盘的I/O请求使调用线程被阻塞或睡眠,直到请求 被完成;一旦进程的I/O请求完成,该进程被放入运行队列中,I/O很快完成, 该进程使用更多的CPU时间;wa的值不应该超过25%
3)其他参数
Memory
swpd:虚拟内存使用情况,单位:KB;
free:空闲的内存,单位KB
buff:被用来做为缓存的内存数,单位:KB;
Swap
si:从磁盘交换到内存的交换页数量,单位:KB/秒;
so:从内存交换到磁盘的交换页数量,单位:KB/秒;
IO
bi:发送到设备的块数,单位:块/秒;
bo:从块设备接收到的块数,单位:块/秒;
分析:
1)r远大于cpu的数目,系统就会变慢,r大于cpu数目的4倍,说明系统 正面临cpu功率短缺,系统会严重变慢;
2)id值经常为0,并且sy+us经常大于80%,说明系统cpu负荷过重或者 说缺少cpu资源;
3)wa值大于25%,说明磁盘没有被很好的平衡,系统花费大量时间等待磁盘 I/O或者磁盘的负荷很重;
4)linux首先使用物理内存,物理内存使用完后再使用swap分区,所以linux 系统一般内存利用率都比较高,si,so都等于0,说明swap分区未被使用;
改进方案:
1)调整应用,使其更好的利用cpu,增加cpu数目或者升高cpu主频;
2)优化磁盘,解决I/O问题;
iostat分析:关键参数:
rkB/s:每秒读K字节数,是rsect/s的一半,因为每扇区大小为512字节;
wkB/s:每秒写K字节数,是wsect/s的一半;
avgqu-sz:平均I/O队列长度;
await:平均每次设备I/O操作的等待时间(毫秒);
svctm:平均每次设备I/O操作的服务时间(毫秒);
%util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间 I/O队列是非空的;
分析:
1)磁盘显示长时间的高读写,同时svctm也远大于30,await的值也远大于 svctm,那么说明系统存在严重的磁盘I/O瓶颈
2)%util一直接近100%,说明系统产生的I/O请求太多,系统可能存在磁盘瓶 颈;
3)wait的大小一般取决于服务时间svctm以及I/O队列的长度和I/O请求 的发出模式,svctm比较接近await,说明I/O几乎没有等待时间;await远大 于svctm,说明I/O队列太长,应用得到的响应时间变慢
改进方案:
1)调整应用,令其使用磁盘i/o更加有效率,通过修改磁盘队列、使用应用 服务器的cache;
2)将文件系统分布到2个或多个磁盘上,改变磁盘raid方案;
3)更换更好的盘阵或磁盘,使用更快的存储方案;
关于windows平台
Windows平台测试,要在性能监视器里面选定性能监视对象,然后为每一个监 视对象添加性能监测计数器,性能监测对象及每个对象包含的计数器如下:
1)processor处理器
Processor performance object包含衡量处理器活动方面的计数器,处理器 是计算机进行算数和逻辑计算、在附属件起始操作及运行处理线程的部分,一台 计算机有多台处理器,处理器对象将每台处理器作为对象的范例;
主要包含计数器:
%Processor Time—指处理器用来执行非闲置线程时间的百分比,计算方法 是,测量范例间隔内非闲置线程活动的时间,用范例间隔减去该值,该值是每台 处理器有一个闲置线程,该线程在没有其他线程时运行时的消耗周期,这个计数 器是处理器活动的主要说明器,显示在范例间隔时所观察的繁忙时间平均百分比, 这个值是用100%减去该服务不活动的时间计算出来的;
2)memory内存
Memory performance object由描述计算机上的物理和虚拟内存行为的计数器 组成,物理内存指计算机上的随机存取存储器的数量,虚拟内存由物理内存和磁 盘上的空间组成,许多内存计数器监视页面调度,过多的页面调度引起拖延,会 影响整个系统处理效率;
主要包含的计数器有:
Available MBytes是指以MB表示的物理内存量,此内存能立刻分配给一个 进程或系统使用,它等于分配给待机、空闲和零分页列表内存的总和;
3)Physical Disk硬盘
Physical Disk performance object包含监视计算机上的硬盘或固定磁盘驱 动器的计数器,磁盘用于存储文件、程序及分页数据并且通过读取检索这些项目 并通过记录写入对其进行更改,物理磁盘计数器的值为逻辑磁盘值的总和;
主要包含的计数器有:
Avg.Disk Queue Length指读取和写入请求的平均数;
%Disk Time指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百 分比;
4)Network Interface网络
Network Interface performance object包括衡量通过一个TCP/IP网络连 接发送和接收字节和数据包的速率的计数器,它包括监督连接错误的计数器;
主要包含的计数器有:
Bytes Total/sec是在每个网络适配器上发送和接收字节的速率,包括字符 在内,Network Interface\\Bytes Received/sec是Network Interface\\Bytes Received/sec和Network Interface\\Bytes Sent/sec的总和;
下面做详细说明,每一次测试开始之前,最好服务器和应用进行重启,确保两 次测试之间没有干扰,测试过程中,需要根据具体实际情况,进行相应改动。
本发明的有益效果是:对于服务器性能采集的方法,以数据采集和分析为核 心,通过对采集方法和目标的整理和规范,形成标准化操作,将能够反映服务器 性能的关键数据进行采集,以数据为依据,对服务器的各个子系统进行分析,从 而找到服务器性能瓶颈,为解决测试或者实际应用中提升服务器性能提供依据。

具体实施方式

1.数据采集范围
1)数据采集范围
2)在测试过程中,要记录整个测试过程中的测试数据。
3)确定性能监测的对象,包括各子系统,主要包括cpu,内存,磁盘,网络。
2 数据采集同步性
1)测试系统可能分为多层架构,在每一层架构上的数据收集要保证时间上的 同步,这样才能对系统运行期间的状态变化作出准确的描述。
2)各子系统的性能监测数据要保证时间上同步。
3)测试日志:在测试过程中,每一天都要完成测试日志,记录一天测试进程, 出现问题。
3、数据采集方法
数据的采集,根据平台的不同,主要分为两类:Linux & windows
Linux系统
1)性能监测工具
A)cpu,内存:vmstat
B)磁盘I/O:iostat
C)网络:sar
2)使用方法(见4小节)
Windows系统
1)性能监测工具
按以下顺序,打开性能监视器:
控制面板—>管理工具—>性能
2)使用方法(见4小节)
4、测试数据整理
测试数据的整理,将测试数据表格化,或者图形化,为方便后续的分析做准备
1)测试数据图形化
主要是针对Linux系统,Linux系统下我们采集到的数据都是文本格式,需要 我们把这些数据图形化,便于后续的数据分析对比。
主要是图形包括折线图或柱状图
2)文件命名规则
在测试过程中,取值文件比较多,需要将其规范命名,避免混乱。便于以后的 使用。
命名规则:
A)尽量让文件名包含更多的文件信息
B)格式:工具简称_平台信息_测试模型(可根据实际情况改变)
举例:在河南计生委MIS系统测试中,文件如下命名:
io_4N4U——4节点4路平台,iostat测试数据
vm_it——Itanium平台,vmstat测试数据
io_lk_r—1000用户iostat读性能曲线.
5、测试方法实例
1.采样时间间隔。
在同一次测试中,不同工具的采样时间间隔需要相等。
2.采点数值。采样点为数值N
为便于后续测试的分析,要保证足够数量的采样点,根据测试时间建议:
A)测试时间为1小时以下:150B)测试时间为1-2小时:250vmstat使用
首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]#mkdir test_vmstat
执行如下命令:
[root@nodeltmp]#vmstat 5n>/tmp/test_vmstat/file_name
#每5秒钟取值一次,并将结果输出到文件中。
Note:1)file_name根据实际情况命名
      2)n为记录的次数,根据测试时间调整。
      3)取值间隔时间为5秒,也可以调整。
Example:(vmstat)
[root@standby~]#vmstat15
procs--------memory-----------swap-------io-----system------cpu----
r  b  swpd  free  buff  cache  si so  bi   bo  in   cs  us  sy id  wa
0  0  0     69680 60500 533600 0  0   1    0   52   16  0   0  100  0
0  0  0     69680 60500 533600 0  0   0    0   1008 16  0   0  100  0
0  0  0     69680 60500 533600 0  0   0    0   1025 35  0   0  100  0
0  0  0     69680 60500 533600 0  0   0    0   1004 17  0   0  100  0
0  0  0     69680 60500 533600 0  0   0    0   1026 35  0   0  100  0
io stat使用
首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]# mkdir test_iostat
执行如下命令:
[root@nodel tmp]#iostat-x5n|grep sdn>/tmp/test_iostat/file_name
#每5秒钟取值一次,并将结果输出到文件中。
Note:1)file_name根据实际情况命名
      2)n为记录的次数,根据测试时间调整。
      3)取值间隔时间为5秒,也可以调整。
      4)sdn为要监测的磁盘设备名称,根据实际情况修改
Example:(iostat)
[root@standby~]#iostat-xll|grep sdb
Device: rrqm/s  wrqm/s  r/s  w/s  rsec/s  wsec/s  rkB/s
sdb      0.00     0.00  0.00  0.00 0.01    0.00    0.00
Device: wkB/s   avgrq-sz avgqu-sz   await   svctm   %util
sdb      0.00    33.60    0.00       13.27   5.44    0.00
sar使用
首先需要创建目录,用来存放测试数据:
[root@nodel~]#cd/tmp/
[root@nodel tmp]# mkdir test_sar
执行如下命令:
[root@nodel tmp]#sar-n DEV5n|grep eth0>/tmp/test_sar/file_name
#每5秒钟取值一次,并将结果输出到文件中。
Note:1)file_name根据实际情况命名
      2)n为记录的次数,根据测试时间调整。
      3)取值间隔时间为5秒,也可以调整。
Example:(sar)
[root@standby~]#sar-n DEV 15|grep ethl
11:25:10AM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s
11:25:10AM ethl  2.00    0.00    120.00  0.00    0.00    0.00    0.00
11:25:11AM ethl  0.98    0.98    58.82   119.61  0.00    0.00    0.00
11:25:12AM ethl  6.00    1.00    580.00  122.00  0.00    0.00    0.00
11:25:13AM ethl  3.00    1.00    212.00  106.00  0.00    0.00    0.00
11:25:14AM ethl  3.00    1.00    180.00  106.00  0.00    0.00    0.00
Average:   ethl  2.99    0.80    229.48  90.84   0.00    0.00    0.00
windows性能监测工具
控制面板—>管理工具—>性能
使用步骤:
1)计数器日志
打开性能监测工具,点击性能日志和警报,选择计数器日志
完成此步骤,在右边工作区域可以看到有一个默认的系统日志文件:system overview
2)新建日志设置
在右侧的工作区域,右键点击,选择新建日志设置,弹出对话框,填入日志名 称。
3)添加计数器
单击添加计数器钮,弹出对话框,在性能对象里面,选择要监测的对象,比如 处理器,内存,网络。
每一个对象对应若干计数器,可以选中从列表中选择计数器,来添加需要的计 数器,完成后,进行下一步
4)设置日志文件
以上步骤为常规设置,现在点击日志文件,进行日志文件的设置。
此处可以保留默认。
5)设置计划
设置为手动执行。也可以根据需要,进行计划设置。
6)测试开始,启动,图标颜色有红色变为绿色。
新建日志完成,在计数器日志工作区就可以看到新建日志。红色图标为停止状 态,绿色为运行状态。
选中日志,点击右键,可以手动执行开始与停止。
6、测试数据解读与分析
Linux平台
测试过程中,我们主要通过vmstat,iostat,sar监视系统资源,主要包括: 进程,内存,swap,cpu,磁盘I/O,以及网卡。
vmstat分析
关键参数:
1)进程:我们主要关注r与b参数:
r参数:运行队列线程数目,包括正在运行的线程和等待CPU时间片的线 程。如果这个数字大于CPU的数目,至少有一个线程要等待CPU,等待CPU的线 程越多,越有可能对性能产生影响。
b参数:每秒等待队列中的内核线程平均数。包括正在等待文件系统I/O的 线程,或由于内存装入控制而被挂起的线程。
如果进程由于内存装入控制而被挂起,在vmstat报告中的阻塞列(b)表明线 程数目增加,而不是运行队列中线程数目增加。
2)cpu:在该时间间隔内使用CPU时间的百分比细分。cpu列如下:
us参数:us列显示了用户模式所消耗的CPU时间。
sy参数:sy列详细显示了CPU在系统模式下执行一个线程所花时间的百分 比。
id参数:id列显示了没有未决磁盘I/O时CPU空闲或等待时间的百分比。 如果没有未决I/O,所有用于等待的时间归入空闲时间中。
wa参数:盘I/O时CPU空闲的时间百分比。如果当等待正在运行时至少有 一个未完成的磁盘I/O,该时间归入等待I/O的时间。除非该进程使用异步I/O, 否则对磁盘的I/O请求使调用线程被阻塞(或睡眠)直到请求被完成。一旦进程 的I/O请求完成,该进程被放入运行队列中。如果I/O很快完成,该进程可以 使用更多的CPU时间。wa的值不应该超过25%
3)其他参数
Memory
swpd:虚拟内存使用情况,单位:KB
free:空闲的内存,单位KB
buff:被用来做为缓存的内存数,单位:KB
Swap
si:从磁盘交换到内存的交换页数量,单位:KB/秒
so:从内存交换到磁盘的交换页数量,单位:KB/秒
IO
bi:发送到块设备的块数,单位:块/秒
bo:从块设备接收到的块数,单位:块/秒
分析:
1)如果r远大于cpu的数目,系统就会变慢,如果r大于cpu数目的4倍, 说明系统正面临cpu功率短缺,系统会严重变慢
2)如果id值经常为0,并且sy+us经常大于80%,说明系统cpu负荷过重, 或者说缺少cpu资源。
3)wa值如果大于25%,说明磁盘没有被很好的平衡,系统花费大量时间等待 磁盘I/O。或者磁盘的负荷很重。
4)linux首先使用物理内存,物理内存使用完后再使用swap分区,所以linux 系统一般内存利用率都比较高,但是如果si,so都等于0,说明swap分区未被使 用。
改进方案:
1)调整应用,使其更好的利用cpu,增加cpu数目或者升高cpu主频
2)优化磁盘,解决I/O问题
iostat分析
关键参数:
rkB/s:每秒读K字节数。是rsect/s的一半,因为每扇区大小为512字节。
wkB/s:每秒写K字节数。是wsect/s的一半。
avgqu-sz:平均I/O队列长度。
await:平均每次设备I/O操作的等待时间(毫秒)。
svctm:平均每次设备I/O操作的服务时间(毫秒)。
%util:一秒中有百分之多少的时间用于I/O操作,或者说一秒中有多少时间 I/O队列是非空的。
分析:
1)如果磁盘显示长时间的高读写,同时svctm也远大于30,await的值也远 大于svctm,那么说明系统存在严重的磁盘I/O瓶颈。
2)如果%util一直接近100%,说明系统产生的I/O请求太多,系统可能存在磁 盘瓶颈
3)wait的大小一般取决于服务时间(svctm)以及I/O队列的长度和I/O请 求的发出模式。如果svctm比较接近await,说明I/O几乎没有等待时间;如果 await远大于svctm,说明I/O队列太长,应用得到的响应时间变慢。
改进方案:
1)调整应用,令其使用磁盘i/o更加有效率,可以通过修改磁盘队列、使用 应用服务器的cache。
2)将文件系统分布到2个或多个磁盘上,改变磁盘raid方案。
3)更换更好的盘阵或磁盘,使用更快的存储方案。
windows平台
Windows平台测试,我们要在性能监视器里面选定性能监视得对象,然后在为 每一个对象添加性能监测计数器,主要包括的性能监测对象,以及每个对象包含 的计数器:
1)processor处理器
Processor performance object包含衡量处理器活动方面的计数器。处理器 是计算机进行算数和逻辑计算、在附属件起始操作及运行处理线程的部分。一台 计算机可以有多台处理器。处理器对象将每台处理器作为对象的范例。
主要包含计数器:
%Processor Time—指处理器用来执行非闲置线程时间的百分比。计算方法 是,测量范例间隔内非闲置线程活动的时间,用范例间隔减去该值。(每台处理器 有一个闲置线程,该线程在没有其他线程可以运行时消耗周期)。这个计数器是处 理器活动的主要说明器,显示在范例间隔时所观察的繁忙时间平均百分比。这个 值是用100%减去该服务不活动的时间计算出来的。
2)memory内存
Memory performance object由描述计算机上的物理和虚拟内存行为的计数器 组成。物理内存指计算机上的随机存取存储器的数量。虚拟内存由物理内存和磁 盘上的空间组成。许多内存计数器监视页面调度(指磁盘与物理内存之的代码和数 据页的移动)。过多的页面调度(内存不足的一种表现)可引起拖延,会影响整个系 统处理效率。
主要包含的计数器:
Available MBytes是指以MB表示的物理内存量,此内存能立刻分配给一个 进程或系统使用。它等于分配给待机(缓存的)、空闲和零分页列表内存的总和。 要获得内存管理器的详细解释,请参阅MSDN和/或Windows Server 2003 Resource Kit里的系统性能和疑难解答指南章节。
3)Physical Disk硬盘
Physical Disk performance object包含监视计算机上的硬盘或固定磁盘驱 动器的计数器。磁盘用于存储文件、程序及分页数据并且通过读取检索这些项目 并通过记录写入对其进行更改。物理磁盘计数器的值为逻辑磁盘(由磁盘分成)值 的总和。
主要包含的计数器:
Avg.Disk Queue Length指读取和写入请求(为所选磁盘在实例间隔中列队的) 的平均数。
%Disk Time指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百 分比。
4)Network Interface网络
Network Interface performance object包括衡量通过一个TCP/IP网络连 接发送和接收字节和数据包的速率的计数器。它包括监督连接错误的计数器。
主要包含的计数器:
Bytes Total/sec是在每个网络适配器上发送和接收字节的速率,包括帧字符 在内。NetworkInterface\\Bytes Received/sec是Network Interface\\Bytes Received/sec和Network Interface\\Bytes Sent/sec的总和。
6.附录
对于得到的测试数据,可能需要以下处理,使用utraledit:
正则表达式:
替换行首空格:%[^t]+替换为:#不要填写任何字符或空格
替换空白行:%[^t]++^p。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈