ImageVerifierCode 换一换
格式:DOCX , 页数:52 ,大小:1.03MB ,
资源ID:24009960      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24009960.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(淘宝性能测试白皮书 V10.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

淘宝性能测试白皮书 V10.docx

1、淘宝性能测试白皮书 V10序言二零零九,岁在己丑,秋末冬初,会于产品研发之测试,修性能书也,群贤 毕至,少长咸集。此地有系统框架,API 接口;又有 Web 应用,无线性能,分 布式各大中心,列坐其次。虽无丝竹管弦之盛,一书一典,亦足以畅叙幽情。是日也,天朗气清,惠风和畅。仰观系统之大,俯察测试之盛。所以游目骋 怀,足以极性能之娱,信可乐也。测试之相与,俯仰淘宝,或接口功能,测试一室之内;或安全性能,放浪形 骸之外。虽用例万殊,方法不同,当其欣于所遇,暂得于己,怏然自足,曾不知 新人倍增;及其所之未知,能力各异,感慨系之矣。向之所能,俯仰之间,已为 陈迹,犹不能不以之兴怀。况系统复杂,调优艰难

2、。马云曰:“系统之不稳。岂 不痛哉!”每览昔人性能测试成就之由,若合一契,未尝不临技能嗟叹,不能喻之于怀。 固知技术名利为虚诞,齐知识业绩为妄作。后之视今,亦犹今之视昔。憾夫!故 列叙性能理论实践,录其指标模型策略,虽世殊事异,性能技术,其致一也。后 之览者,亦将有感于斯性能白皮书。郭芙 淘宝网测试掌门人2009 年 11 月 18 日于杭州目录序言. 2目录. 3引言. 5性能测试指标 . 5Vuser虚拟用户 5Transaction事务 5TPS每秒事务数 6PV Page View 6Peak PV 高峰Page View 6Concurrency并发 7Scenario场景 7Res

3、ponse Time响应时间 7Think Time思考时间 7CPU资源 8Load负载 9Std. Deviation标准差 10性能测试模型 . 10PV计算模型 10PV-TPS转换模型 12TPS波动模型 12共享中心性能测试模型 . 13前端页面性能测试模型 . 14性能测试策略 . 15性能测试评估 . 16关键业务 . 17日PV量 17逻辑复杂度 . 17运营推广计划 . 17其它 . 17性能测试类型 . 18性能测试压力变化模型 . 18性能测试类型 . 181. 性能测试. 182. 负载测试. 193. 压力测试. 194. 稳定性测试. 19性能测试执行方法 . 1

4、9单场景 . 19混合场景 . 20性能监控 . 20监控指标 . 20监控工具 . 21监控步骤 . 23性能分析 . 24分析原则 . 24分析信息来源 . 24分析标准 . 24分析工具 . 24性能测试通过标准 . 27性能测试流程 . 28性能测试流程图 . 28性能测试流程主要活动 . 29性能测试文件模版 . 30结束语 . 30参考文献 . 31版本更新说明 . 32作者介绍 . 32引言淘宝网自创立以来,除了对功能的要求很高以外,对性能的要求也越来越高。从最初的 系统框架性能测试、TOP-API 接口性能测试,到现在的 Web 应用性能测试,无线性能测试 领域,淘宝性能测试在

5、不断向前发展,横向、纵向都在不断深入、拓宽,不断创新。经过五彩石项目对淘宝的整体应用重构之后,淘宝网形成了以四个中心为应用基础的分 布式架构体系。而分布式网站的性能,很大程度上决定了网站的竞争优势。但是,一个应用 的性能由多方面因素决定,这样就增加了性能测试和性能调优的难度,也扩大了性能测试的 广度,这是一个挑战。专业的测试需要专业的团队,我们的团队也应运而生。本性能测试白皮书旨在以理论指导实践,以实践修正理论,将会从以下几个方面介绍和 分析淘宝的性能测试:性能测试指标、淘宝性能测试模型、性能测试策略、性能测试评估、 性能测试类型、性能测试执行方法、性能监控和性能分析、性能测试通过标准,以及性

6、能测 试流程和文件模版。同时,也是让更多的人更好地了解淘宝性能测试和性能调优,参与性能 测试,共同将淘宝网做得更大、更强、更稳定,并且期望淘宝的性能测试能成为电子商务性 能测试业界的标准。性能测试指标Vuser虚拟用户Virtual user,模拟真实业务逻辑步骤的虚拟用户,虚拟用户模拟的操作步骤都被记录在 虚拟用户脚本里。Vuser 脚本用于描述 Vuser 在场景中执行的操作。虚拟用 户在 性能场 景中 有以下 12 个状态 , Down, Pending, Init, Ready, Running, Rendezous, Passed, Failed, Error, Gradual Ex

7、iting, Exiting, Stopped. 如图 1 所示。图 1Transaction事务事务是性能测试脚本的一个重要特性。要度量服务器的性能,需要定义事务,每个事务 都包含事务开始和事务结束标记。事务用来衡量脚本中一行代码或多行代码的执行所耗费的 时间。可以将事务开始放置在脚本中某行或者多行代码的前面,将事务结束放置在该行或者 多行代码的后面,在该脚本的虚拟用户运行时,这个事务将衡量该行或者多行代码的执行花 费了多长时间。在性能测试脚本中,事务的标记会以下列形式出现(举例语言为类 JAVA 语言模式)。 如图 2 所示。trylr.start_transaction(QueryIte

8、mById); final ItemResultDO itemResult= itemQueryService.queryItemById(itemIdDo, options, mainDbRoute); final ItemDO item = itemResult.getItem(); catch (final Exception e)/ TODO Auto-generated catch block e.printStackTrace();finally lr.end_transaction(QueryItemById, lr.AUTO);图 2TPS每秒事务数TPS(Transactio

9、n Per Second)每秒钟系统能够处理的交易或事务的数量,它是衡量系统处 理能力的重要指标。TPS 是 LoadRunner 中重要的性能参数指标。图 3 是 TPS 单位时间段内的分布图。TAOBAO PERF-TEST图 3PV Page ViewPV 是 Page View 的缩写。用户通过浏览器访问页面,对应用服务器产生的每一次请求, 记为一个 PV。淘宝性能测试环境下,将这个概念做了延伸,系统真实处理的一个请求,视 为一个 PV。即,PV 的概念也适用于接口。Peak PV 高峰Page View即 PV 峰值,指一天中 PV 数达到的最高峰。Concurrency并发并发分为

10、狭义和广义两类。 狭义的并发,即所有的用户在同一时刻做同一件事情或操作,这种操作一般针对同一类型的业务,或者所有用户进行完全一样的操作,目的是测试数据库和程序对并发操作的处理。 广义的并发,即多个用户对系统发出了请求或者进行了操作,但是这些请求或操作可以是不同的。对整个系统而言,仍然有很多用户同时进行操作。 狭义并发强调对系统的请求操作是完全相同的,多适用于性能测试、负载测试、压力测试、稳定性测试场景;广义并发不限制对系统的请求操作,多适用于混合场景、稳定性测试 场景。Scenario场景性能测试过程中为了模拟真实用户的业务处理过程,在 LoadRunner 中构建的基于事务、 脚本、虚拟用户

11、、运行设置、运行计划、监控、分析等的一系列动作的集合,称之为性能测 试场景。场景中包含了待执行脚本、脚本组、并发用户数、负载生成器、测试目标、测试执 行时的配置条件等。Response Time响应时间响应时间是指从客户端发一个请求开始计时,到客户端接收到从服务器端返回的响应结 果结束所经历的时间,响应时间由请求发送时间、网络传输时间和服务器处理时间三部分组 成。在性能测试结果分析中,性能场景中事务的响应时间请参阅图 4 所示,事务响应时间分 为事务最小响应时间、事务平均响应时间、事务最大响应时间。图 4Think Time思考时间模拟正式用户在实际操作时的停顿间隔时间。 从业务的角度来讲,思

12、考时间指的是用户在进行操作时,每个请求之间的间隔时间。 在测试脚本中,思考时间体现为脚本中两个请求语句之间的间隔时间。TAOBAO PERF-TEST在脚本中的表现形式如下图 5 所示,加入的思考时间为 10 秒。lr_think_time(10);lr_start_transaction(Limit Promotion);web_submit_data(buy_now.jhtml, Action=http:/$hostname$:$port$, Method=POST,TargetFrame=, RecContentType=text/html,Referer=http:/:/$hostna

13、me$:$port$/auction/item_detail-0db2-auc_ID.jhtml, Snapshot=t18.inf,Mode=HTML, ITEMDATA,Name=catPath, Value=, ENDITEM, Name=item_id, Value=auc_ID, ENDITEM, Name=auction_id, Value=auc_IDgeng, ENDITEM, Name=auction_type, Value=b, ENDITEM, Name=title, Value=2009-08-17 10:24 162, ENDITEM,Name=x_id, Value

14、=db2, ENDITEM,Name=seller_id, Value=b929dfa7858c0e5a054fffd3550e68a2, ENDITEM, Name=allow_quantity, Value=100000, ENDITEM, Name=seller_nickname, Value=tbtest33, ENDITEM,LAST);lr_end_transaction(Limit Promotion,LR_AUTO);图 5CPU资源CPU 资源是指性能测试场景运行的这个时间段内,应用服务系统的 CPU 资源占用率。 CPU 资源是判断系统处理能力以及应用运行是否稳定的重要参数

15、。应用服务系统可以包括 应用服务器、Web 服务器、数据库服务器等。性能测试过程中,对 CPU 的监控以及分析报告、图表有 LoadRunner 自带监控分析、有 Linux 系统输出以及手工汇总、有第三方工具监控分析等。在此以 LR 监控分析图表(图 6)、 JVM 自带 CPU 监控图表(图 7)为例。TAOBAO PERF-TEST图 6图 7Load负载系统平均负载,被定义为在特定时间间隔内运行队列中的平均进程数。如果一个进程满 足以下条件则其就会位于运行队列中:1. 它没有在等待 I/O 操作的结果。2. 它没有主动进入等待状态(也就是没有调用“wait”)。3. 没有被停止(例如:等待终止)。 性能测试结果分析 Load 分布如图 8 所示。图 8Std. Deviation标准差TAOBAO PERF-TEST该标准差根据数理统计的概念得来,标准差越小,说明波动越小,系统越

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1