大型票务系统性能测试浅析-2

上一篇 / 下一篇  2012-07-30 11:21:36 / 个人分类:性能测试

 3.2 后端性能评价方法

/X2_g^d0F Wj0  由于票务系统通常在短时间内进行集中售票,存在短时间内访问量陡增、售票期间持续高压力以及与银行支付业务紧密相关等特点,因此保证大压力下的核心售票系统能够提供高性能的服务水平,将直接影响终端用户的购票体验。糟糕的用户体验包括:51Testing软件测试网,yj+I,Y0{S

X5k8eI[4c*|0  A、超长的等待时间51Testing软件测试网 Cu;i1J)jKN.g

*p.e1HbC `;z'lN0  B、页面无响应

+h Q4^9Y9x'jf4sb W051Testing软件测试网&pfr`4N#w1DX k

  C、支付失败51Testing软件测试网iY.K+FA7P8@c8\O

51Testing软件测试网5yN9H#B:E"~s z^G

  从性能测试角度看,整个运行环境在承受来自世界各地高强度的并发访问过程中,可能存在以下问题:

x3z'CQe [${$z!a051Testing软件测试网 e+{4m#cg9O

  A、网络拥塞导致页面请求响应缓慢或超时报错

NHa:y:Zq:z0

`P P%b,@"f#]0  B、页面刷新机制导致在用户锁票、坐席分配以及支付阶段时,用户等待时间增长,订单处理速度急剧下降51Testing软件测试网4~:{(xuIE

G:f4Pf/aw0  C、大量的金额统计以及票务更新导致交易服务器和后台数据库繁忙

;U?\4CVf4v051Testing软件测试网$[8LXccE1d @7Z

  D、大量的VISA卡支付操作导致支付网点服务器繁忙,处理效率底下51Testing软件测试网)?3Or)uw"y e)o X

51Testing软件测试网3N&PxE4]%k;v"[*x

  为准确模拟实际情况,需将历史经验同本次售票方案相结合,预计并发访问人数、网点规模、数据规模等指标,在保证数据中心实现良好数据共享的情况下,测试的重点应涉及一下几个方面:51Testing软件测试网6d|[']+xOdX,C

6B^9Q5O |n9@ c0  A、网络负载51Testing软件测试网*t7A:lgWGx6PrU8I

0NSF0Sd4FO3i1J0  B、多个数据中心间的负载均衡

OE5W:s$Y0\B]&CWs051Testing软件测试网%{gFM$g+J

  C、峰值期间每小时定单数量51Testing软件测试网 I4[ J"R&O}$Xgf

51Testing软件测试网\s%[5rW:n

  D、代理服务器、交易服务器、数据库服务器的资源消耗情况

2gx2f3tV OWl0

K`0K#L+\-|f9~g`0  E、长时间高效服务的能力

,Y(_hc,|!rT*N0

q6w!EM`*Ko0  4、大型票务系统性能测试方法51Testing软件测试网&yYC {wt2cTQ_

51Testing软件测试网-zTl:T*BEi

  4.1 前段性能测试方法

JO3A5s]+NG0

$mdq8ck(f8m0  前端性能主要的评测工具有Google的Page Speed和Yahoo的YSlow。Google开发团队针对SteveSounder网页性能最优方法,成功地推出一款基于 Firefox/Firebug的开发类插件Page Speed,旨在帮助开发人员分析网站性能存在的主要问题,并有针对性地提出优化改进意见。它支持的操作系统Linux、Mac、Windows。在此 之前, Google内部已经广泛使用PageSpeed优化网页前端性能。YSlow是有雅虎公司开发的免费前端性能检测工具。YSlow通过检测网页上的所有 组件,包括JavaScript动态创建的组件,分析网页的前端性能。同时,YSlow依据前端性能的分析结果提出改进建议。51Testing软件测试网z#Z4P_ CKbW

&O'^"p5G5i~0  在应用上述两款任意一款给你工具进行测试后,将测试结果对应的填入下面的前段性能评测记录表中。51Testing软件测试网|*Vr*w B(\ yL

表1 前段性能评测记录表

x$["D,ms%idsHG0

D,? y$}O6X:r051Testing软件测试网:h8\-p"H7n@j&p

  其中,优化项所有内容必须满足,附加项可以不满足,在评测结果中Y代表满足、N代表不满足、Null代表无优化项相关技术。评测结果共分为A、B、C、D、E和U六个级别。具体对应关系如下表所示:51Testing软件测试网0h|'rc1v+kt

表2 评级标准51Testing软件测试网Lw^;a@*ry

b2XZb_~1y*\ep0

  4.2 后端性能测试方法

{ r9{0] I&F}1|0

  测试主要采用商业级别的性能测试工具进行测试,如HP Loadrunner。通过大规模模拟实际用户的操作行为,测试核心售票系统中注册、浏览、座位选择、支付等关键业务的响应时间和服务器实时处理能力,重 点关注CPU、内存、I/O等信息,为操作系统、中间件和数据库以及服务器的性能优化和调整提供数据依据。51Testing软件测试网i+ifK P8pE

  通常情况下,数据中心中用于支撑售票业务的服务器多达几百台,通过软件在测试中进行监控更容易实现,如UC Berkeley的开源集群监视软件Ganglia。Ganglia的核心包含gmond、gmetad以及一个Web前端,通过自动解析linux操作 系统proc目录下的文件来获取操作系统的主要性能指标。Ganglia带来的系统负载非常少,几乎不会影响被监控系统性能。对于中间件和数据库等基础软 件,可采用其自带的监视器或命令来获取性能指标。

%?9vh5{i$[u:G0

  在测试场景设计中,应考虑准确模拟混合业务的并发操作,以及过载访问的情况,可借鉴下表中的思路进行测试:

Z8tac'O eg0

表3后端性能测试场景51Testing软件测试网 IALV)ci

:E Jvf"t ?F A!J8F0

  通过测试考察运行环境的抗压能力,在成本和风险可接受范围内对整个运行环境进行合理优化,提高核心售票系统的处理能力。总的来说,高效的核心售票系统在上线前达到以下要求:

m;[p/H{4^6Oa1V0

  A、核心业务模块中无明显效率低下的模块

~/{M&] BHii0

  B、多个数据中心间实现了良好的负载均衡,整个运行环境中不存在明显的服务器资源消耗过度的情况51Testing软件测试网 S}}2g%E Dq"s;Kh

  C、整个运行环境的网络承受负载的能力良好,各银行支付网点进行了合理的组网规划,网站与支付系统的流量实现良好分离51Testing软件测试网`W4kH v

  D、在正常和过载情况下,系统的定单数量/小时指标在合理范围内,代理服务器、交易服务器以及数据库服务器的资源消耗合理

d6PG"X3S!so0

  5、总结51Testing软件测试网"I} Fzh$G.@f

  通过分析大型票务系统的访问特点和规律,提出了大型票务系统的性能测试策略和方法,该方法经具备普遍的合理性和较强的操作性,但是该方法还有待在更多大型票务系统性能测试中进行应用和完善。

H AIr T Q0

TAG:

 

评分:0

我来说两句

Open Toolbar