学习性能测试线路图.docx

上传人:b****1 文档编号:1584676 上传时间:2023-05-01 格式:DOCX 页数:14 大小:299.24KB
下载 相关 举报
学习性能测试线路图.docx_第1页
第1页 / 共14页
学习性能测试线路图.docx_第2页
第2页 / 共14页
学习性能测试线路图.docx_第3页
第3页 / 共14页
学习性能测试线路图.docx_第4页
第4页 / 共14页
学习性能测试线路图.docx_第5页
第5页 / 共14页
学习性能测试线路图.docx_第6页
第6页 / 共14页
学习性能测试线路图.docx_第7页
第7页 / 共14页
学习性能测试线路图.docx_第8页
第8页 / 共14页
学习性能测试线路图.docx_第9页
第9页 / 共14页
学习性能测试线路图.docx_第10页
第10页 / 共14页
学习性能测试线路图.docx_第11页
第11页 / 共14页
学习性能测试线路图.docx_第12页
第12页 / 共14页
学习性能测试线路图.docx_第13页
第13页 / 共14页
学习性能测试线路图.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

学习性能测试线路图.docx

《学习性能测试线路图.docx》由会员分享,可在线阅读,更多相关《学习性能测试线路图.docx(14页珍藏版)》请在冰点文库上搜索。

学习性能测试线路图.docx

学习性能测试线路图

性能测试学习线路图(建议)

1概览

纵向划分3颗子树:

vugen,controller,monitor。

优先学习vugen脚本开发以及调试。

横向划分为2层:

基础知识以及高级应用。

2基础知识

2.1Loadrunner工具使用

2.1.1建议学习路径

Vugen开发脚本(函数使用)->controller场景设置->monitor增加计数器

2.1.2Loadrunner认证

更多见

2.1.3Vugen常用增强函数

增加事务:

lr_start_transaction/:

lr_end_transaction

检查点:

web_reg_find

关联:

web_reg_save_param,web_set_max_html_param_len

日志:

lr_error_message,lr_log_message,lr_output_message…

选项设置:

web_set_timeout

httpheader:

web_add_auto_header

以及更改runtimesetting。

2.1.4Loadrunner架构图

概览图

详细架构图:

2.2Html/http协议

HTML4.01Specification:

http:

//www.w3.org/TR/html4/

对性能测试而言,METAhttp-equiv控制http头、浏览器行为,故最为重要。

http协议:

http:

//www.faqs.org/rfcs/rfc2616.html

客户端发送请求:

服务器响应:

2.3C语言基础编程

Loadrunner常用的c函数主要集中在内存分配/释放、字符串操作、文件读写。

如:

malloc/free

Sprintf/strcmp/strlen/

Fopen/fread/fwrite

2.4Linux性能分析初步

核心指令:

Top

Sar

Vmstat

Iostat

Sar-nDEV

/proc文件系统

分析经验性步骤:

首先查看CPU使用情况,按照诊断CPU、内存或磁盘瓶颈的指导进行操作。

对于下面的每个步骤,查找一端时间内的趋势,从中收集系统运行性能较差时的数据。

另外,只有将这些数据与系统正常运行时收集的数据进行比较时才能进行准确的诊断。

步骤1

#sar-u[interval][iterations]

(示例:

sar-u530)

%idle是否很低?

这是CPU未在运行任何进程的时间百分比。

在一端时间内%idle为零可能是CPU瓶颈的第一个指示。

不是->系统未发生CPU瓶颈。

转至步骤3。

是->系统可能发生了CPU、内存或I/O瓶颈。

转至步骤2。

步骤2

%usr是否较高?

很多系统正常情况下花费80%的CPU时间用于用户,20%用于系统。

其他系统通常会使用80%左右的用户时间。

不是->系统可能遇到CPU、内存或I/O瓶颈。

转至步骤3。

是->系统可能由于用户进程遇到CPU瓶颈。

转至部分3,部分A,调整系统的CPU瓶颈。

步骤3

%wio的值是否大于15?

(不同os有不同的阀值)

是->以后记住这个值。

它可能表示磁盘或磁带瓶颈。

转至步骤4。

不是->转至步骤4。

步骤4

#sar-d[interval][iterations]

用于任何磁盘的%busy是否都大于50?

(请记住,50%指示一个大概的指南,它可能远远高于您系统的正常值。

在某些系统上,甚至%busy值为20可能就表示发生了磁盘瓶颈,而其他系统正常情况下可能就为50%busy。

)对于同一个磁盘上,avwait是否大于avserv?

不是->很可能不是磁盘瓶颈,转至步骤6。

是->此设备上好像发生了IO瓶颈。

转至步骤5。

步骤5

系统上存在磁盘瓶颈,发生瓶颈的磁盘上有哪些内容?

原始分区,

文件系统->转至部分3,部分B,调整发生磁盘IO瓶颈的系统。

Swap->可能是由于内存瓶颈导致的。

转至步骤6。

步骤6

#vmstat[interval][iterations]

在很长的一端时间内,po是否总是大于0?

对于一个s800系统(free*4k)是否小于2MB,

(对于s700系统free*4k是否小于1MB)?

(值2MB和1MB指示大概的指南,真正的LOTSFREE值,即系统开始发生paging的值是在系统引导时计算的,它是基于系统内存的大小的。

不是->如果步骤1中的%idle较低,系统则很可能发生了CPU瓶颈。

转至部分3,部分A,调整发生了CPU瓶颈的系统。

如果%idle不是很低,则可能不是CPU、磁盘IO或者内存瓶颈。

请转至部分4,其他瓶颈。

是->系统上存在内存瓶颈,转至部分3部分C,调整发生内存瓶颈的系统。

2.5Windows性能分析初步

同windowsperfmon。

同样集中在cpu,内存,io,网络上。

一般经验值:

网络

网络利用率阀值没有统一。

<30%or80%?

冲突率:

<1%

PacketsReceivedErrors<1%

I/O:

DiskTime%<90%

Avg.DiskBytes/Read+Avg.DiskBytes/Write<20K

Avg.Disksec/Transfer<0.3sec

队列长度:

QueueLength<2

Avg.Disksec/Transfer<18milliseconds

内存

AvailableMbytes>25%

Pagein+out<20次

内存泄露以及错误:

PoolNonpagedBytes:

anincreaseof10percentormorefromitsvalueatsystemstartup。

Server->PoolNonpagedFailuresshowsthenumberoftimesallocationsfromnonpagedpoolhavefailed-indicatesthatthecomputer`sphysicalmemoryistoosmall.应为0

Server->PoolPagedFailuresindicatethateitherphysicalmemoryorapagingfileisnearcapacity.应为0

Server->PoolNonpagedPeakshowsthemaximumnumberofbytesinnonpagedpooltheserverhashadinuseatanyonepoint.Indicateshowmuchphysicalmemorythecomputershouldhave.

处理器

利用率<85%

每个CPU队列长度<2

ContextSwitches/sec<5000次或者<5%oftotalthreads

3高级应用

3.1性能建模

从businesslayer、functionlayer、sessionlayer、customerlayer出发,借助日志分析工具挖掘系统负载模型、用户行为模型。

MercuryEndUserManagement正是一个从client视觉出发的业务监控解决方案。

3.2网络嗅探器

如ethreal,fiddler,以及httpdebuger工具,诊断网络问题。

3.3Loadrunnertroubleshooting

各个环节都可能有问题。

(client,通信,服务器)

经验性步骤:

诊断vugen脚本、loadrunner场景设置、客户端硬件资源是否充足

判断服务器端各层是否达到资源上限

借助ethereal等网络嗅探器判断c/s通信问题

3.4Linux性能分析与调优

深入了解:

进程/多线程编程

同步机制

Gdb调试core

内核参数

3.5Windows性能分析与调优

Windows其他计数器

3.6C语言调用dll扩展测试脚本

Dll编写格式:

int__stdcalllr_getLinuxIOwait_end()

{

clnt_destroy(clnt);

}

.def文件

EXPORTS

lr_getLinuxIOwait_end@3

loadrunner调用dll函数:

lr_load_dll("my.dll");

3.7Apache/jboss/weblogic/oracle性能优化

参见各个产品tuning文档

http:

//httpd.apache.org/docs/2.0/misc/perf-tuning.html

http:

//httpd.apache.org/docs/1.3/misc/perf-tuning.html

http:

//wiki.jboss.org/wiki/Wiki.jsp?

page=JBossASTuningSliming

http:

//www.jboss.org/index.html?

module=bb&op=viewforum&f=121

3.8计算机性能评测研究方向

Ø相关理论研究(泊松分布、排队论、MaKov模型、Montecarlo模拟、自相似理论)

Ø负载特性WorkloadCharacteristic的研究(CommercialWorkload/TechnicalWorkload)

Ø基准程序Benchmark的研究

Ø性能指标的研究(全生命周期/高效能/TPOTotalProductivityOwnership/SLAServcieLevelAgreement/QoS)

Ø模拟器的研究(SimpleScalar/SimOS/SandOS)

Ø测试系统的研究(BenchmarkFactory/ServerScope/BenchmarkStudio/LoadRunner/Forecasttoolset)

Ø监控系统PerfomanceEvaluation(IntelVtune/EMon/TeamQuestLite/ServerScope-Monitor/Grid-View)

Ø性能评测与体系结构的结合(Computerarchitectureanalysisusingworkloads)

参见

3.9Mercucyperformancecenter

4性能测试书籍

《Microsoft.NETWeb应用程序性能测试》

《软件性能测试过程详解与案例剖析》

《WEB性能测试实战》

《J2EE性能测试》

《  LoadRunner性能测试实战》

5测试网站

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2