说明:之后的时间比较少,所以直接贴我在记事本上做的笔记。比较碎片化,不利于除自己之外的人浏览,在此抱歉!
Windows 性能指标
Object(对象) Counters(计数器) 含义以及判断技巧
----------------------------|-------------------------------|----------------------------
Memory (内存) Available Mbytes 可用物理内存数,至少要有10%的物理内存值
Page/sec * Page/sec 是为了解析硬件页面错误从磁盘读取或写入磁盘的页数。该值不宜超过20,
Pages Read/sec 如果服务器没有足够的内存处理,此值会比较高
* Pages Read/sec 是由于硬页错误而读取磁盘的次数。一般阈值为5,如果该值一直持续较大,
则表示很多是从磁盘读,可能内存不足。
这些值如果比较高,可能是由服务器的内存短缺引起的,也可能是缓存设置太大导致
----------------------------|-------------------------------|----------------------------
Cache Bytes 文件缓存系统,默认为50%的可用物理内存。IIS运行内存不够时,会自动整理缓存
----------------------------|-------------------------------|----------------------------
Processor(处理器) %processor Time 处理器的消耗时间,此值的最佳范围为75%~95%。如果持续高于95%,则有可能
是处理器出现瓶颈,需要添加或更换一个更好的
-------------------------------|----------------------------
%Idle Time 处理器的的空闲时间。该值太小说明资源可能没有被充分利用
-------------------------------|----------------------------
%User Time 非系统操作所消耗的时间。如果存在复杂算法或大量计算可能会导致该值较高
-------------------------------|----------------------------
%Interrupt Time 中断操作所消耗的时间,如鼠标、磁盘驱动器、网卡和其他外部设备,这些
设备通常都会中断处理器。如果该计数器和Processor Time同一时间都比较高
(超过的80%),那么很可能是硬件问题。
----------------------------|-------------------------------|----------------------------
Physical Disk(物理硬盘) %Disk Time 磁盘操作锁占用的时间。此值过大表示消耗太多时间来访问磁盘,可考虑增加内存、
换更快的硬盘、优化读写数据的算法等。如果持续走高,而CPU和网络并没有
饱和则可能存在内存泄漏
-------------------------------|----------------------------
Average Disk Queue Length 读取请求的平均队列长度。一般小于0.5,此值过大表示磁盘I/O太慢,更换跟快的硬盘
----------------------------|-------------------------------|----------------------------
Process(进程) Private Bytes 是当前进程专用的,无法与其他进程共享。可以认为它是进程对物理内存的消耗,且
该指标性对来说更加稳定。在程序产生内存泄漏时,该值一定是不断上涨的。所以
一般更倾向于使用Prvate Bytes 来定量进程的内存消耗和分析进程的内存泄漏
----------------------------|-------------------------------|----------------------------
Network Interface(网络) Bytes Total/sec 每秒发送和接收的字节数,可判断网络是否达到饱和。该值和目前网络带宽相除的结果
应小于50%
-------------------------------|----------------------------
Output Queue Length 输出队列长度。输出队列越长,延时处理输出的数据请求就越多。
----------------------------|-------------------------------|----------------------------
System(系统) Processor Queue Length 等待处理器处理的线程排队长度,不包括懂啊齐纳正在处理的。如果该值持续超过处理器
总数量+1(一般为2),则有可能处理器出现了堵塞。
Linux 性能指标
指标名称 含义以及判断技巧
Swap-in/out rate 进程与交换分区的交换率。如果比较频繁,可能内存资源的使用比较紧张
System mode CPU Utilization 系统操作所占用的CPU
User mode CPU Utilization 用户操作所占用的CPU
Average Load 平均负载。指一段时间内CPU正在处理及等待CPU处理的进程数之和的统计信息。
一般情况下,Average Load<CPU数 * 核数 * 0.7 为佳
Context switch rate 上下文切换率。减少切换率能有效提升系统的响应速度。
Paging rate 内存页交换率。如果该值偶尔走高,可能当时有线程竞争内存。如果持续走高,则内存可能出现瓶颈
Disk traffic 磁盘传输率
Incoming/Outgoing packets error rate 数据包接收、发送的错误率。该值较大会影响到响应时间
Collistion 冲突率。该值过高会使网络响应变慢
组件应用
常用前端性能指标
常用后端性能指标
性能测试方案
性能测试报告
------------
从VUGen到Contraller到Analysis
Contraller 30虚拟用户 (注意Run-time setting)
Scenario--Enable IP Spoofer(启用IP欺骗)
如果使用Localhost/***/** 是不会走物理网卡,走的是127.0.0.1的虚拟网卡。自己的电脑建议使用IP地址或机器名
设置IP欺骗后,65992-error,Socket desciptor ont found
要用设置的IP欺骗的网卡进行访问。而是用无线网或者访问localhose/127.0.0.1,没有使用设置了IP欺骗的网卡进行访问引起的
添加 资源监控
Disk Time(PhysicalDisk_Total):硬盘读写时间
Processor Time(Processor_Total):CPU的占用率
AVg Disk Queue Length(LogicaDisk):平均磁盘队列长度
Avalable MBytes:可用物理内存数
Processor Queue Length:判断CPU瓶颈。如果processor queue length显示的队列长度保持不变(>=2)并且处理器的利用率%Processor time超过90%,那么很可能存在处理器瓶颈.
如果发现processor queue length显示的队列长度超过2,而处理器的利用率却一直很低,或许更应该去解决处理器阻塞问题,这里处理器一般不是瓶颈.
Bytes Sent/sec(network lnterface lntell):是在每个网络适配器上发送的字节(包括帧字符)的速度。
Bytes Received/sec (network lnterface lntell):每个网络适配器上接收的字节的速率,包括帧字符在内
CurrentDiskQueueLength:读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数
运行
运行结果保存在:Results--Results Settings
打开:
Results--Analysis Results
会发现 Contraller的Response Time和Analysis的响应时间差了很多。
原因:脚本中think time包含在事务中,Contraller包括think time,而Analysis默认去掉了
在Analysis中,图形--右键--Set Fiter/Group/By 可以看到think time,下拉键可以选择包含思考时间(建议去掉!)
------------
Analysis 基础功能使用
中间:
Statistics Summary 统计汇总
Maximum Running Vusers最大虚拟用户数: 10
Total Throughput(bytes)总吞吐量: 1000 000 000
AverageThroughput(byte/second)平均每秒吞吐量: 100 000
Total Hits总点击量: 1 000
Average Hits per Second平均每秒点击率: 10 000
Total Errors错误数: 1 000
一般单位时间内吞吐量越大,说明服务器的处理能力约好
左侧:
Reports
Summary Report: 一个总结性的报告
Maximum Running Vusers:用的最多的虚拟用户数
Total Throughput(bytes):总的吞吐量多少字节(从服务器端一共响应了多大的字节量)
AVerage Throughput(bytes/second):平均每秒的吞吐量
Total Hits:一共发了多少个请求,点击数(用httpwatch打开一个页面,可看到很多的请求,每一个请求可以认为是一个Hits)
AVerage Hits per Second:平均每秒发送多少个请求
Transaction Summary:
事务的一个总的报告
Http Level Agreement Legend:
Http整个相应的状态
Graphs
每个详细的图表
右键--add New item--add new Graphs
web page Diagnostics,并没有收集全部的数据,只是采集部分零散的数据,所以都仅仅是提供我们参考
Contraller--Diagnostics--COnfiguration
可看到web page Diagnostics,是启用状态。只收集最多的虚拟用户的10%
System Resources
Windows Resources只有监控到资源占用率才会显示此图表
Running Vusers:
Hits per Second:大致用户增加点击数增大,但是当用户量不断增加服务器响应变慢服务器处理变慢(10个用户发每分钟100个请求,50个用户对服务器的压力不一样,所以50个用户每分钟不一定能发送500个请求),虽然发的多但不一定用户量越多点击就变多点击速度就越快。
Throughput:吞吐率,大致同Hits per Second。Hits per Second请求发的越多,服务器响应的也就越快所以大致吻合。
Transaction Summary:事务摘要,每个事务的成功率
AVerage Transaction Response Time:平均的响应时间,前面提到过这里不包含think time.
Transaction per Second:每秒的事务处理的速度。
web page Diagnostics:web页面的细分图
Diagnostics options:可以设置不同处理的时间
legend:针对每一个页面,每个请求的详细数据
Windows Resources:只有监控到资源占用率才会显示此图表
在上面几个图表的中,右键
set Fiter/Group By 设置过滤条件/分组
Filter condition
Transaction Name
Transaction Response Time
Scenario Enable Time
Transaction hierarcheicalPath
Transaction End Status:选择事务的结束状态 Fail Pass Stop
Vser ID:默认是针对所有的虚拟用户,可以选择任意想要看到的虚拟用户
Think Time:设置是否包含思考时间
Group By
根据不同的条件进行分组
Set Granularity(间隔尺度,粒度) 设置粒度,图黑色的小方块是默认*s内数据的平均值,这里可以设置任意时间观察数据显示(建议保持默认4s)
View Measurement Trends 观测量的发展趋势,会把某个图上的所有曲线重叠到一起查看整体的趋势
View Raw data 查看原始数据,选择时间后可以在右侧的Raw Data小选项卡看到,每一个虚拟用户在某一个时间发了一个请求得到相应的时间是多少...上方有小图标可以直接导出到Excel
重要的2个功能!
Merge Graphs 合并图,选择一个图表作因然后右键点击Merge Graphs,下拉框选择要合并比较的另一个图表作果(因果不能颠倒)。
sele type of merge
Overlay(覆盖、镀金):所选的表格重叠分析
Tile:一上一下对比着看
Corrlate(相关):将图表关联分析,
Auto Corrlate 自动关联(在因的这张图表右键选择 Auto Corrlate)
Corrlate Options:选择需要关联分析的图表及设置
新生产的一张图表,比别的多出一个列 Correlation Match(相关匹配)
怎么解决数据跳动凌乱。
在Contraller场景设置中坚持2个基本的原则,主要是针对Ramp up/down(虚拟用户数增加下降的过程)--例如每30s增加/减少2个虚拟用户
1.越慢越好 -- 收集的数据足够多,趋势体现的足够细
2.平衡好运行时间 -- 越慢越好的前提下平衡好运行时间
--------------------
淋浴喷头淅淅索索
阳光在它淋湿的地方,透过纱窗的孔洞晃啊晃
臭虫躲在角落,头对着墙角向后扒着小碎石,它竟然埋了自己的小半
洗发露的香伴着沐浴露的香,在风里打了个旋飘去
灰尘被水打落,更多的灰尘在水的缝隙里游荡
嘤嘤哼哼
念着你自己也不知道的调
你想着剧 想着床 想着吹风机
我只是打了个喷嚏,低头看着自己的影子
大夏天里开始怀念
单车 马路 大雨还有被淋湿的自己
阳光在它淋湿的地方,透过纱窗的孔洞晃啊晃
臭虫躲在角落,头对着墙角向后扒着小碎石,它竟然埋了自己的小半
洗发露的香伴着沐浴露的香,在风里打了个旋飘去
灰尘被水打落,更多的灰尘在水的缝隙里游荡
嘤嘤哼哼
念着你自己也不知道的调
你想着剧 想着床 想着吹风机
我只是打了个喷嚏,低头看着自己的影子
大夏天里开始怀念
单车 马路 大雨还有被淋湿的自己