感谢COCOS论坛ID: 欧阳锋友情提供
http://forum.cocos.com/t/cocos-creator-c-websocket/45884
系统环境
本文适用于使用WebSocket网络通讯框架,需要测试执行具体业务对服务端造成压力情况的小伙伴们。
百度一下网络测试有很多方案,比如jmeter、loadrunner等等,这里我们介绍的是jmeter。
首先安装jmeter
具体安装步骤请参考
http://blog.csdn.net/lijingprince9/article/details/7980817
在eclipse中创建一个maven项目,修改pom.xml
以上就是所有需要引用的jar包,另外建议修改一下setting.xml中的镜像。
建议在mirrors中增加如上的镜像地址,这个库很全,基本上需要的jar包在这个里面都能找到。
完成之后回到eclipse增加三个类
MainClass
LogicSampler
SimpleEchoSocket
完成之后将项目导出为jar包。
进入jmeter目录,将以下包放入lib/ext目录中
然后回到bin目录,运行jmeter.bat
安装线程组,建议如果要执行多个的话就多添加几个线程组,一个线程组的线程数量开的太大会爆卡。
因为我要测试1万人同时在线,4个线程组2500个线程,每个线程就是一个牌桌,我在每个牌桌里会有4个玩家 所以,每个线程组我开625个线程。
然后添加java请求
这里选择你刚才导出的包,注意这个jar包是和其他需要添加的包一起放到lib/ext里面。
然后按照这个方法再添加4个线程组就可以开始运行。
在服务端可以使用top命令查看内存和cpu的运行情况,如果要检测网络情况请安装nload,很好很强大。
在top命令之后可以按数字1调出所有CPU的情况展示。然后运行的时候观测各个指标即可。
如果要检测响应超时什么的可以在服务端返回给客户端消息的时候就带上响应时间参数。
这个测试方案研究了几天,基本上可以模拟出业务系统运行状况,但貌似还不能获得jmeter的图形化展示结果,正在研究中......
如果正在阅读文章的各位大神有更好的解决方案,记得戳「 阅读原文」到论坛留帖分享或者文末留言给我反馈意见哦,谢谢!
直播预告
05月16日(周二)20:00~22:00
斗鱼ID:726225
当家主播:南塔斯 + Jare
新增功能ES6 Classes、
TypeScript知识讲解
https://www.douyu.com/726225
戳原文,更有料!