基准websocket服务器(hybi-17)node.js(0.6.7)

我正在开发一个使用node.js的webscoket服务器,当我完成我的核心api时,我想开始对我的服务器进行基准testing并testing内存泄漏。 目前为止我发现的唯一的基准testing工具是wsbench ,但是这个项目已经过时了,并且使用了折旧的API调用。 我发现一些其他过时的post上的答案或解决scheme,将无法基于平台的工作,(我使用OS X)。 我真的正在寻找一些更新的解决scheme来解决这个问题,而不是一年前的东西。

我想你正在寻找Autobahn WebSockets协议testing套件 。 这是非常新的和全面的,套件是使用python实现的,所以它应该是相当便携的。

主要是testing客户端和服务器实现的正确性,但是第9节(超过50个单独testing)与性能和负载testing相关。

高速公路testing套件是一个很好的开始。 它的9.xtesting可以为不同的消息大小,分片大小,TCP数据包大小以及客户端和服务器实现的往返时间提供良好的性能覆盖。 请记住,高速公路是用python编写的,因此当您的实现接近testing客户机/服务器本身的速度时,提供准确度量的能力就会降低。

为了帮助提供更好的性能衡量指标,用比Python更快的语言编写,我正在使用C ++ WebSocket ++库实现许多Autobahn 9.xtesting。 WebSocket ++还包含一个通用压力testing客户端,允许服务器作者testing数千个连接发生在他们的服务器上。

Autobahn和WebSocket ++都完全支持2011年11月发布的最终RFC6455 WebSocket规范。WebSocket是相对较新的技术,它们的testing工具还没有完全成熟。 如果您对WebSocket性能testing有任何疑问或反馈,请随时与我联系,或者将问题发布到Github项目中。

免责声明:我是WebSocket ++的作者,也是Autobahntesting套件的贡献者。