使用Apache JMeter测试基于epoll机制的高并发socket服务器

使用Apache JMeter测试基于epoll机制的高并发socket服务器

设备:

基于TCP的群聊服务器运行于服务器Ubuntu16,JMeter位于win10.

遇到的问题:

刚开始使用JMeter进行TCP测试时,报timeout错误。

问题的解决:

对于timeout的问题,首先判断是否已经将对应端口对外开发,检查了防火墙是否允许对端口的访问,使用了Telnet对端口进行测试,这个时候发现,使用127.0.0.1加端口号的时候可以得到正确的相应,但是使用服务器的ip地址的时候就是拒绝访问,于是判断可能是ip的原因,然后查到了ip地址的区别,将绑定ip从127.0.0.1换为了0.0.0.0,使用Telnet测试通过。

于是在JMeter上填写好对应的参数以后,终于成功了,但是测试的结果不是非常好。

测试结果:

刚开始将所有描述符都设置为了非阻塞模式,当连接数量超过6个以后就会报出Resource temporarily unavailable,解决方法:What can cause a “Resource temporarily unavailable” on sock send() command
,使用阻塞模式后恢复了正常,但是连接数量还是会受到限制。

在这里插入图片描述
关闭测试工具后:
只有6个进入了time_wait状态,其他的没有进入,有待研究。
在这里插入图片描述

参考文章:
JMeter的安装
Ubuntu端口打开
IP地址127.0.0.1与0.0.0.0的区别
Apache JMeter TCPSampler的使用及自定义
jmeter 的 tcp 测试核心知识点理解

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章