系统压力测试报告案例存储转发机制优化系统Word格式文档下载.docx
- 文档编号:22333980
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:47
- 大小:36.37KB
系统压力测试报告案例存储转发机制优化系统Word格式文档下载.docx
《系统压力测试报告案例存储转发机制优化系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《系统压力测试报告案例存储转发机制优化系统Word格式文档下载.docx(47页珍藏版)》请在冰豆网上搜索。
1.2测试方法
●测试工具及脚本:
应用ORM工具(Hibernate)作为辅助工具,对应用系统的主要参数(例如线程数、线程与落地方的对应关系、每次捞saf记录数、落地方的可承受接收记录数)等等进行管理,及对运行log进行正确行分析,计算压力测试结果,计算性能图绘制数据等等。
另外,监控服务器的CpuIdle、Memory、DiskIO等重要数据则由perfmon.Sh脚本完成。
●测试方法:
通过工具webMethodsDeveloper启动/关闭saf线程,直到应用系统满足压力测试要求的循环次数为止。
1.3压力测试场景
压力测试场景主要分为两种方式:
✧单场景:
50万saf数据中,在未处理数据不同比例中,应用系统的吞吐能力。
50万saf数据中,不同的线程数量,应用系统的吞吐能力。
✧混合场景:
50万saf数据中,在未处理数据不同比例与不同的线程数量中,应用系统的吞吐能力。
1.4测试系统环境配置
服务器环境如下:
服务器操作系统:
HP-UX11.11
服务器IP:
JDK版本:
JDK1.4.1PA2.0
测试环境是:
中心:
服务器:
用户:
cmcbadm
系统目录:
csc:
/home/cmcbadm及/opt/webMethods
webMethods端口:
5555
数据库:
配置:
jdbc:
oracle:
thin:
@&
user=cmcbadm
CSN1:
wm_sn1
csn1:
/home/wm_sn1及/opt/webMethods
6666
user=csn1
CSN2:
wm_sn2
csn2:
/home/wm_sn2及/opt/webMethods
8888
user=csn2
1.5参考资料
《存储转发机制优化概要设计_
《一级BOSS抗容功能规格说明书》
《存储转发机制优化系统测试方案及案例.doc》
2压力测试场景一
2.1场景一特征
saf数据有1000条,很少,线程有3个,每个线程只对应与一个落地方。
本场景的测试意义更多是验证功能的正确性,例如验证saf存储转发是否满足三个原则?
线程名与落地方的对应关系是否正确?
线程每次循环取saf记录数是否正确?
线程循环间隔时间是否正确?
线程睡眠时间是否自适应?
等等(详见,为其它真正的压力测试场景测试做好基础工作。
本场景是在启动sc、sn1、sn2应用后进行测试。
2.2测试数据
2.2.1线程信息表
线程标识
间隔时间(ms)
每次捞数
线程1
5000
100
线程2
线程3
注释:
共3个线程,循环间隔时间5000ms,每次捞saf数据记录100条
2.2.2线程与落地方关系表
落地方机构码
落地方当前
接收能力(条/次)
落地方最大
2101
30
2201
60
2501
90
1.共3个机构,占总机构(31个)的10%,其中机构码8888是特殊机构,是中心应用日月结数据
2.每个线程大约管理1个机构的saf数据发送
3.落地方的接收能力是一个随机数,在30条/次,60条/次,90条/次三种能力的其中之一
2.2.3saf数据关系
节点数
Saf总记录
未处理数
已处理数
间隔时间
中心捞数/次
线程数
每线程处理的省
每省承受
10%的省
(3省)
1000
5s
1
30/60/90
1.saf总记录数1000,未处理的0
2.1000未处理的数据平均散落到3个省中,平均大约300条/省
3.每条saf记录的发送优先级别在4,5,6三个优先级别的其中之一
2.3测试步骤
1.开始
2.关闭saf线程
updateSAF_DISPATCHERSsetSTATUS=’1’;
3.删除测试日志:
rm/tmp/testlog.log*
4.启动Cpu、Mem、Disk监控程序
/tmp/perfmon.sh
5.启动saf线程
updateSAF_DISPATCHERSsetSTATUS=’0’;
通过工具webMethodsDeveloper启动saf线程
6.观察测试日志
ls–l/tmp/testlog.log*,共有8个文件(每个线程单独有一个文件)
ls-l/tmp/*.stat,共有4个文件,分别是:
cmcbtst2_cpu.stat(Cpu活动记录,每隔5s记录一次)
cmcbtst2_mem.stat(Memory活动记录,每隔5s记录一次)
cmcbtst2_disk.stat(Disk活动记录,每隔5s记录一次)
cmcbtst2_is.stat(java进程活动记录,每隔5s记录一次)
7.循环观察ls–l/tmp/testlog.log*,直到循环处理saf数据8-10次为止
8.关闭saf线程
通过工具webMethodsDeveloper观察,直到8个线程均退出为止
9.关闭Cpu、Mem、Disk监控程序
【Ctrl】+【c】
10.ftp测试日志
把测试日志ftp到本地PC
测试日志有:
/tmp/testlog.log*,共有8个文件(每个线程单独有一个文件)
/tmp/cmcbtst2_cpu.stat(Cpu活动记录,每隔5s记录一次)
/tmp/cmcbtst2_mem.stat(Memory活动记录,每隔5s记录一次)
/tmp/cmcbtst2_disk.stat(Disk活动记录,每隔5s记录一次)
/tmp/cmcbtst2_is.stat(java进程活动记录,每隔5s记录一次)
11.运行本地的测试日志拆分、分析程序
程序:
HibernateTest1.java
作用:
根据多线程存储转发运行日志testlog.logxxx(xxx是线程名)进行拆分解析,并得到运行过程中的重要数据
12.结束
注释:
本压力测试主要测试从几十万级的saf数据中捞出需要发送数据记录的能力,因此为突出重点,简化了系统环境,即把程序中发送语句临时注释掉(不发送)。
2.4测试结果
2.4.1测试日志和脚本
1).(参见《压力测试场景一测试日志.rar》)
2).(参见压力测试日志解释程序)HibernateTest1.java
2.4.2基本测试结果
主要检查项
主要检查点
结果
三个原则
优先级高的先发
OK
同级时间优先
按照落地方承受能力发送
线程名与落地方的对应关系
线程名与落地方的完全对应
线程每次循环取saf记录数
记录数正确
线程循环间隔时间
间隔时间正确
线程睡眠时间
若T2-T1>
=T,则告警(须调整间隔时长),继续执行1。
否则Sleep(T-(T2-T1))
落地方与线程
同一个落地方与线程唯一对应
错误:
可以不唯一对应
2.4.3支撑数据和测试结果表
线程
每次捞saf数量
落地方
接收能力
压力测试项
压力测试结果
捞次数/睡次数
49/49
最少/最大/平均捞数据耗时ms
141/879/264
最少/最大/平均睡眠时间ms
4121/4859/4735
43/43
126/696/210
4304/4874/4789
132/870/247
4130/4868/4752
3个线程共捞且发送saf记录共22740条
3个线程共捞且发送saf记录平均耗时(264+210+247)/3=240.33毫秒
3个线程共捞且发送saf记录循环平均次数(49+43+49)/3=47次
3线程共同捞且发送saf数据平均速度:
22740/240.33*1000/47=2013.19(条/秒)
2.4.4性能曲线图
2.4.4.1图表说明:
捞saf数据且发送数据所耗时间(毫秒)图
X轴为线程循环次数,Y轴为捞saf数据且发送数据所耗时间(毫秒)
整个运行期间,所有线程中耗时最小126毫秒,最大879毫秒,平均值:
240.33毫秒
2.4.4.2图表说明:
Memoryfree检测图
X轴为每间隔5秒循环检测Memoryfree次数,Y轴为Memoryfree值(M)
Memoryfree值来源于服务器的TOP命令中Memoryfree值
物理内存:
2097152Kbytes
Memoryfree值(M)(起点92.83M):
整个运行期间,最小值:
74.72M,最大值92.83M,平均值:
84.38M(平均耗内存92.83-84.38=8.45M)
2.4.4.3图表说明:
userCpu、sysCpuidleCpu的平均值检测图
X轴为每间隔5秒循环检测Cpu次数,Y轴为userCpu、sysCpuidleCpu的平均值(%)
userCpu、sysCpuidleCpu值来源于服务器的TOP命令中userCpu、sysCpuidleCpu的Avg值
userCpu值(%):
31.9%,最大值38.9%,平均值:
35.4%
sysCpu值(%):
18%,最大值23.4%,平均值:
21.02%
idleCpu值(%):
0.2%,最大值46.6%,平均值:
33.14%
2.4.5压力测试小结
下列测试指标证明系统处于轻载状态
●3线程共同捞且发送saf数据平均速度:
2013.19(条/秒)
●捞saf数据且发送数据(平均每线程每次大约160条记录)所耗时间,所有线程中耗时最小126毫秒,最大879毫秒,平均值:
240毫秒
●Memoryfree值(M),整个运行期间,最小值74.72M,最大值92.83M,平均值:
●idleCpu值(%),整个运行期间,最小值:
3压力测试场景二
3.1场景二特征
saf数据记录有50万条,未处理的数据记录有20万条,共有8个线程,落地方机构有25个,平均每个线程处理大约3个机构。
该场景验证数据库访问的吞吐能力、系统线程的协调能力,同时也可验证在高强度压力下功能的正确性。
本场景是在启动sc、关闭sn1、sn2应用后进行测试。
3.2测试数据
3.2.1线程信息表
线程4
线程5
线程6
线程7
线程8
共8个线程,循环间隔时间5000ms,每次捞saf数据记录100条
3.2.2线程与落地方关系表
2001
5911
8981
2701
7711
9711
3711
7311
7911
2301
2801
8911
2901
8511
8711
9311
3111
3511
5311
4711
5511
5711
8888
120
1.共26个机构,占总机构(31个)的84%,其中机构码8888是特殊机构,是中心应用日月结数据
2.每个线程大约管理3个机构的saf数据发送
3.2.3saf数据关系
84%的省
(26省)
50万
20万
30万
8
3
4*(30/60/90)
4*(120/150/180)
1.saf总记录数50万,未处理的20万,占总数的40%
2.20万未处理的数据平均散落到25个省中,平均8000条/省
3.每条saf记录的发送优先级别是在4,5,6三个优先级别的其中之一
3.3测试步骤
与压力测试场景一完全相同
3.4测试结果
3.4.1测试日志和脚本
1).(参见《压力测试场景二测试日志.rar》)
2).(参见场景一压力测试日志解释程序)HibernateTest1.java
3.4.2基本测试结果
3.4.3支撑数据和测试结果表
8/0
468288/626185/586774
0/0/0
519297/661643/612259
7/0
556247/723280/675301
596618/764844/706594
481347/789852/707512
10/0
374084/562711/493206
9/0
439257/581731/539130
355052/498521/463642
8线程共同捞且发送saf数据(条):
10530
8线程共同捞且发送saf数据平均耗时(毫秒):
598052.25
8个线程共捞且发送saf记录循环平均次数:
8.25次
8线程共同捞且发送saf数据平均速度(条/秒):
2.13(10530/598.05225/8.25)
3.4.4性能曲线图
3.4.4.1图表说明:
捞saf数据且发送数据所耗时间(秒)图
X轴为线程循环次数,Y轴为捞saf数据且发送数据所耗时间(秒)
整个运行期间,所有线程中耗时最小355秒,最大790秒,平均值:
598秒
3.4.4.2图表说明:
Memoryfree值(M)(起点388M):
126.82M,最大值287.73M,平均值:
194.13M(平均耗内存388-194=194M)
3.4.4.3图表说明:
1%,最大值23.8%,平均值:
5.33%
0%,最大值36.6%,平均值:
5.40%
0%,最大值99%,平均值:
79.11%
3.4.4.4图表说明:
Disk检测图
X轴为每间隔5秒循环检测Disk次数,Y轴为Diskbusy值(%)
Diskbusy值来源于服务器的sar-d命令中Diskbusy值
Diskbusy值(%):
94.29%,最大值100%,平均值:
99.8%
3.4.5压力测试小结
下列测试指标证明系统处于极度饱和状态
●8线程共同捞且发送saf数据平均速度:
2.13(条/秒)
●捞saf数据且发送数据(平均每线程每次大约160条记录)所耗时间,所有线程中耗时最小355秒,最大790秒,平均值:
●Memoryfree值(M),整个运行期间,最小值:
●idleCpu值(%),整个运行期间,最小值:
●Diskbusy值(%),整个运行期间,最小值:
系统处于极度饱和状态,瓶颈在Disk的读写操作
4压力测试场景三
4.1场景三特征
与场景二几乎相同,不同的是未处理数据降为10万条,已经处理数据升为40万条。
验证未处理数据量从20万降到10万后,数据库访问的吞吐能力是否有改善,可以改善多少?
4.2测试数据
4.2.1线程信息表
与压力测试场景二完全相同
4.2.2线程与落地方关系表
4.2.3saf数据关系
10万
40万
1.saf总记录数50万,未处理的10万,占总数的2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 系统 压力 测试报告 案例 存储 转发 机制 优化