华为云CPTS对WebSocket协议的性能测试实践

举报
测试小妹 发表于 2019/01/16 10:02:49 2019/01/16
【摘要】 WebSocket协议即时服务带来巨大流量,对系统性能造成冲击,华为云如何维护系统稳定?

互联网应用时代,用户获取信息的方式从传统媒体到新媒体,信息时效性对通信技术要求越来越高, HTTP协议已经不能适用。于是WebSocket出现了,它实现浏览器与服务器的全双工通信,服务端主动向客户端发送数据。同时即时服务带来的巨大流量对系统性能提出不小的挑战,如何才能处理高实时信息又能维护系统稳定性?


针对大规模WebSocket协议测试,需要准备专业的测试设备,加上测试环境部署和管理耗费大量时间,导致测试工作效率低下、成本高。华为云性能测试服务CPTS将这些过程迁移至云端,帮助用户省去自建性能测试环境成本,用户只需关注测试脚本的实现过程,大大降低了大规模性能测试的复杂度和开销。


1.PNG

社交聊天、弹幕、多玩家游戏、协同编辑、股票基金实时报价、体育实况更新、视频会议/聊天、基于位置的应用、在线教育、智能家居等需要高实时的场景。


2.PNG

目前CPTS服务暂不支持两个场景的使用
•wss加密场景
•多用户长连接复用场景(即每个用户事务请求完成后会重新建链)


3.png

一、登录华为云性能测试服务,进入控制台 https://console.huaweicloud.com/cpts/


1.png



二、在测试工程页面创建测试工程


2.png



三、创建WebSocket协议事务元素

1、进入创建工程下的事务模型页面


3.png



2、点击“添加事务”,创建事务模型


4.png



3、事务模型创建好后,点击事务下的“添加元素”按钮,进入到WebSocket协议卡片页面


5.png



4、正确输入WebSocket协议对应的请求链接,建立连接,点击“确定”按钮


6.png


成功保存在该事务模型下:


7.png



5、在其后的卡片中,点击“+添加元素”,添加需要推送的内容,进行保存


8.png9.png


若需添加多条交互信息,可继续添加卡片



10.png



6、WebSocket协议支持添加全局变量
(1)在WebSocket协议的请求链接中支持添加全局变量


11.png



(2)在推送内容中添加全局变量


12.png



7、WebSocket协议的推送内容支持添加思考时间、响应提取和检查点元素


13.png


(1)添加思考时间


14.png


(2)添加响应提取


15.png


(3)添加检查点


16.png



8、事务元素添加完毕后启动调试,查看调试结果


17.png18.png



四、添加测试任务,并配置压测的时长和需要模拟的并发用户数


19.png


五、在测试任务点击启动按钮,选择共享资源组(支持100并发的免费额度),需要更多的并发可以通过购买套餐包,详见:https://www.huaweicloud.com/price_detail.html#/cpts_detail



20.png


六、压测完成后,生成实时和离线的测试报告。点击实时报告,可查看并发信息,成功率,时延区间统计,时延TPxx统计,资源利用率分析,调用链分析,测试结果一览无遗。

21.png

• 资源分析:

22.png


•调用链分析:

23.png


•拓扑分析:

24.png


新年伊始,云性能测试服务CPTS全新改版

重磅推出铂金版和专业版

提供文件导入变量、Jmeter脚本导入、Swagger接口导入等高阶压测服务

邀您一起尝鲜:

https://www.huaweicloud.com/product/cpts.html   


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。