为了方便压力测试ws服务,Beetlex同样提供相关工具来对ws/wss服务的性能进行测试测试。
安装
可以访问https://github.com/beetlex-io/TCPBenchmarks 下载最新版本工作,工具可以运行在linux和windows系统,安装完成后通过浏览器访问相关服务进行操作。
使用
工具提供的操作很简单,只需要简单地添加服务和发送的消息即可对服务进行一个压力测试。在添加服务的时候可以指定ws对应用的path和相关头信息,如果有需要还可以启用SSL。
消息类型
工具发送的消息有两种类型:utf8和hex,分别对应websocket数据包类型的text和binary。
测试方式
工具提供两种测试方式,分别是:请求响应和间隔两种模式。前者是工具收到响应后马上进行下一次数据发送;后者则是每隔指定时间向服务端发送数据。 本地IP选项主要告诉工具由那个IP发起请求,如果测试的连接太多单个IP的端口数满足不了测试的情况下,请根据连接数量来选择多个IP地址。测试工具占用的端口是10000-60000。
高吞吐压测
如果服务端在局域网想测试高吞吐交互则可以选用请求响应模式,这种模式可以具备高强度的压测效果;注意这种测试模式不适合采用大量在连接,只需要适当的连接数量即可。以下用200连接对2K数据进行一个高吞吐测试。
高连接数压测
有些情况只观察大量在线的情况,不太关注极限吞吐的能力。这个时候就设置较大的连接数,测试模式选择间隔,然后设置间隔发送的时间。接下来进行一个10W在线尝试每2秒发送一个2K数据包的情况。