从川普胜选、双十一购物来看服务器性能的测试思路

导读

没有流量,产品烦恼;流量太大,开发人员困扰。川普胜选瘫痪了加拿大移民局网站,双十一的购物热潮也影响了众多网站服务的速度,每一次大事件都给服务器带来了无上的压力。在流量高峰的日子里,购物,狂欢,是其他人的事情;定位风险,预防风险,才是测试人员的使命。

北京时间2016年11月9日,周三,美国共和党参选人川普(Donald Trump)赢得了美国大选,成为了新的一届美国总统。然后,发生了一件有趣的事,加拿大移民局官网瘫痪了! 

网站上写着:“使用该网站可能面临延迟现象,我们正尽力排除问题,感谢您耐心等候” 
原因是有相当一部分美国人表示如果川普当选,他们就要移民加拿大,而此时一位加拿大议员就将自家移民局的网站链接发了出去,然后悲剧就产生了……

从美国东部时间星期二8点至半夜,谷歌上“如何搬去加拿大”点击量暴增1500%。到了周三凌晨,加拿大移民局官网彻底瘫痪……不过,福克斯新闻网也表示,这很正常,每次大选加拿大移民局网站都会迎来一场移民申请高峰。

每四年的十一月都有一次访问高峰给服务器带来了巨大的压力。这熟悉的场景好像我们每年都有? 
在美国,这现象叫做“美国大选”,在中国,我们叫“双十一”……

2009年,当时还叫“淘宝商城”的天猫在11月11日举办了促销活动,活动的初衷很简单,天猫想要营造一个属于自己的节日,选在这一天的原因也很简单,因为光棍节正好处在十一黄金周和圣诞促销中间,而这时候天气变化正是人们添置冬装的时候。双十一的活动戳中的用户的心理,也掀起了电商圈的一股惊涛骇浪。 

从2009到2015年,天猫的双十一活动交易额从0.5亿上升到了900亿,近两年都能够近乎翻倍的增长,从2012年支付宝交易额达到191亿元打破了全球网购单日销售记录;到2013年55秒交易额突破1亿;再到2014年13小时打破2013年的交易额,天猫每年都在创造记录。

然而,双十一的活动也不从来都是一帆风顺的,往往在双十一开始的最高峰时期,支付宝也不止一次的出现过故障的情况,同加拿大移民局的网站面对申请高峰出现故障一样,订单的瞬间暴增会造成多家网银无法通过支付宝支付的现象。

在使用了云计算的情况下,支付宝这类业内一流的架构在高峰期仍然遇到巨大的挑战。 为了保证企业业务在访问高峰时期依然能够正常运行,不影响用户体验和企业收入,在”用户暴涨“的时间节点之前对产品服务器进行预先的测试是非常必须的,那么,应该如何进行测试呢?

在一般的电商系统中,功能上有搜索,聊天,下单,付费,收货,评价等诸多功能,对系统都会产生不一样的压力,要对自身的业务进行剖析,权重最高的是哪个,风险最高的是哪个,从而进行设计相对应的测试策略。为了检验电商网站自身系统性能,就需要对服务器反复的测试与回归,力求实现最真实的用户访问场景。腾讯WeTest服务器性能测试(http://wetest.qq.com/gaps的“全局参数化设置”与”上下文变量设置“功能帮助用户实现了模拟用户的访问场景。

“全局参数化“遍历电商网站所有商品

腾讯WeTest服务器性能测试的“全局参数化“实现的是通过自动更改”index“字段中的参数,实现遍历电商平台上所有商品页面,对电商平台上所有的商品页面模拟真实的用户压力。 

1、点击右上角的“全局参数化“的设置按钮,开始设置全局参数化 

2、点击“添加“,添加参数,将参数名修改为想要测试的字段,比如上面的”index“字段。另外参数化形式中有”自增“、”随机值“和”定长“三种配置方式。 
“自增“可以设置”最大值“和”最小值“,比如最小值设置1,最大值设置100,就可以自定义服务器压力,遍历电商平台上参数值为1-100的所有商品; 
“随机值“可以实现在自定义范围内随机对某商品页面进行压力测试; 
“定长“通过设置一定长度下的数值,在这个范围内的所有商品页面进行随机的压力测试,比如定长设置为3,则会在”000-999“”aaa-zzz“之间进行随机的压力测试。 

“全局参数化“可以设置”自增“、”随机值“和”定长“三种形式

“全局参数化“下的”定长“参数设置

具体操作可见如下动图: 

“上下文变量设置“模拟用户传输登录信息

“上下文变量设置“实现的是将用户登录的所包括的用户信息传输到下一个页面中,对于电商平台来说,通常代表的是用户在登录之后,点击了”购买“,带着用户的登录信息,进入了购买页面。

1、通过腾讯WeTest服务器性能测试,在“客户端请求“点击”上下文变量“,开始配置 

2、“上下文变量设置“是为了实现URL之间参数信息的传递,因此需要点击右下角的”+一个URL请求“增加一个URL,然后保证第一个URL的”变量名“与第二个URL的字段保持一致 

3、“提取方式“通常选择”键值对“较多(具体使用可根据实际情况),选择想要传递信息的”header名称“,确定”提取规则“。”提取规则“中所填写的就是传递到下一个页面的信息,比如电商平台用户的会员信息。

那么”提取规则“应该填写什么呢?我们需要在URL页面中去寻找这个”键值“。 
首先在chrome浏览器中输入第一个URL,点击F12,点击Network,刷新一下页面之后点击最左侧的”setcookie_prep.php“,找到对应的header“Set-Cookie“,后面order_id后的值,就是我们将要传输给下一个URL的信息。 

4、完成了”上下文变量“的设置之后,在“测试模型“中的场景中选择”上下文“模式,分别输入两个URL。 

5、如果自有服务器,则可以在“服务器监控“的”添加监控“中设置服务器信息;如果没有,则可以点击”立即执行“开始测试 

具体操作可见如下动图: 

总结

对电商平台来说,要进行压测的部分不止是遍历所有商品页还有模拟真实用户购买那么简单,还会有搜索,聊天,收货,评价等更多的功能,本文希望通过以上两个简单的范例,让大家了解到如何剖析自身的业务特点,然后根据不同的特点去测试各自的场景,力求达到最真实的用户访问情况,也为可能出现的火爆情况做好准备,避免出现加拿大移民局网站的悲剧,也避免让电商平台的买家因为无法付款而流失。

做好这些,才能做出更好的电商网站。

在流量高峰的日子里,购物,狂欢,是其他人的事情;定位风险,预防风险,才是测试人员的使命。 
腾讯WeTest运用了沉淀十多年的内部实践经验总结,通过基于真实业务场景和用户行为进行压力测试,帮助游戏开发者发现服务器端的性能瓶颈,进行针对性的性能调优,降低服务器采购和维护成本,提高用户留存和转化率。

功能目前免费对外开放中,欢迎大家的体验 
体验地址:http://wetest.qq.com/gaps/ 
如果对使用当中有任何疑问,欢迎联系腾讯WeTest企业qq:800024531

参考文章: 
解密天猫双十一的发展历程 今年又有什么新鲜事儿? 
http://sz.winshang.com/news-544595.html 
逃不掉的双十一 可怕的分布式架构隐患, 
http://server.it168.com/a2014/1112/1681/000001681959.shtml 
加拿大移民局官网瘫痪!是因为这群“川普难民”… 
http://www.fr-cn.fr/china/news/18761.html 
加拿大移民官网瘫痪,美国“川普难民”也要来加拿大 
http://www.andyyimin.com/AU/news/588.html

时间: 2024-10-10 08:38:18

从川普胜选、双十一购物来看服务器性能的测试思路的相关文章

双十一个购物秒杀神“器”

一年一度的双十一将要到来,我还清楚的记的2014年淘宝在双十一那天的商家销售额是571亿至于有没有做假我们暂且不做评论,毕竟那天是属于全民的欢乐日子,这里面当然是女性最为开心,她们在一个月前或着还要之前就开始为双十一做好准备了,如存钱啊这应该也是最重要的. 现在离2015年的双十一还有差不多有半个月吧,不过现在的商家广告那是满天飞啊,电视上,电脑上,电梯里,传统的宣传,有送红包的,秒杀,都有把每个人都吸引的不要不要的,特别是女生,我想这个时候很多女的应该开始在网站上浏览着自已在双十一想要的东西了

双十一购物倒计时效果

马上双十一了,过了零点小伙伴们就要各自对放在购物车里的订单下单了,今日特写一个倒计时效果. 倒计时的主要思路: 知道结束时间的时间戳,当前的时间戳,结束的时间减去当前的时间就是,倒计时需要显示的时间差.然后对天.小时.分钟.秒,运行换算. 这里强调一个函数function todouble(),就是把换算出来的时间不足2位的,在数字前面加上一个“0”,比如1秒,变成01秒,2分钟变成02分钟.. 然后依次修改图片的top值在页面中显示.下面上代码. 1 <!DOCTYPE html PUBLIC

台北电玩展A-2展台,来看TestBird的最新测试技术吧!

1月28日,台北,Bird这次来到了台北电玩展,向台湾同胞们展示最新的测试业务和云手机平台.28日~29日,两天的时间,对TestBird感兴趣的小伙伴都可以来到A-2找我们. 台北电玩展的人气很旺,早上9点多种就已经来了很多寻找合作的开发者和商务人士.TestBird美女VP Sunny向现场的小伙伴介绍了我们的最新动向. TestBird的云手机业务已经能够提供超过400部热门终端,供开发者远程调试他们的APP.这个数字目前仍在增加,我们的目标是将市面上95%的热门终端囊括其中.Sunny介

日活上百万时,腾讯产品如何提前规避服务器宕机风险?

众所周知,优异的应用性能是良好用户体验的坚实基础,而服务器响应缓慢.卡顿.崩溃的产品,即便设计再精美也无法留住用户的心. 2017年2月28日,百度就和用户们开了一个不大不小的玩笑,从当天的20点54分到21点24分左右,百度搜索整整宕机了30分钟,众多网友戏言那30分钟成为了百度最有存在感的30分钟,但是从后来百度的公关文章中,可以看到其提到了"错过了大家上亿次的搜索请求",从这个体量来看,这无论如何都是一次很大的影响了. 无独有偶,今日头条也在今年的1月出现了宕机现象,系统超过30

性能测试分析软件汇总–开源、商业全部收集

本文共包含:商业性能测试.监控.分析工具和免费.开源性能测试监控分析工具:共涉及java.php.net等各种开发语言平台,有系统性能分析.文件系统分析.微博.系统分析.数据性能分析等各种工具,可以说本文包含了现有的所有的性能测试监控分析工具工具133种. Java程序性能分析工具 VisualVM VisualVM是一个集成多个JDK命令行工具的可视化工具.可以作为Java应用程序性能分析和运行监控的工具.开发人员可以利用它来监控.分析线程信息,浏览内存堆数据.系统管理员可以利用它来监测.控制

Web服务器性能压力测试工具http_load、webbench、ab、Siege使用教程

Web服务器性能压力测试工具http_load.webbench.ab.Siege使用教程 作者: feng 日期: 2012/07/25 发表评论 (0) 查看评论 一.http_load 程序非常小,解压后也不到100K,http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死.还可以测试HTTPS类的网站请求. 官网:http://www.acme.com/software/http_loa

JavaScript 九种跨域方式实现原理

前言 前后端数据交互经常会碰到请求跨域,什么是跨域,以及有哪几种跨域方式,这是本文要探讨的内容. 一.什么是跨域? 1.什么是同源策略及其限制内容? 同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到 XSS.CSFR 等***.所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个 ip 地址,也非同源.同源策略限制内容有: Cookie.LocalStorage.IndexedDB 等存储性内容DOM 节点AJAX 请求发送

校招面经

原文作者自述: “  博主渣渣本科,挣扎到十一月秋招终于结束了.面过百度/腾讯/小米/网易/搜狗/知乎/京东/360/瓜子.期间总结了一些面试题目,现在放上来.由于是博主自己的面经记录,所以涵盖不全面的话诸位请谅解. 根据博主的面试经验来看,面试有一定的层次性,如bat级别公司每个点都会深入,而有些公司则只会问到表层,所以将每个领域都分为必须掌握和深入了解这两个部分. ” 一.计算机网络 基础部分 TCP报头格式 UDP报头格式 TCP/UDP区别(不仅是宏观上的,最好能根据各自的机制讲解清楚)

几种常见的跨域原理的实现

一.什么是跨域? 1.什么是同源策略及其限制内容? 同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到 XSS.CSFR 等攻击.所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个 ip 地址,也非同源. 同源策略限制内容有: Cookie.LocalStorage.IndexedDB 等存储性内容 DOM 节点 AJAX 请求发送后,结果被浏览器拦截了 但是有三个标签是允许跨域加载资源: <img src=XXX&g