我们正在开发一个使用WebSocket技术的群聊功能。我们希望测试当前架构能够支持多少连接。
基本上,这归结为如何模拟WebSocket。
我们正在开发一个使用WebSocket技术的群聊功能。我们希望测试当前架构能够支持多少连接。
基本上,这归结为如何模拟WebSocket。
根据我的最近经验,我可以给你一个建议。你可以将基于webkit的Phantom虚拟客户端连接到你的聊天服务器上,并测量资源使用情况(例如CPU、内存,可以使用shell脚本或其他实用工具,或者你可以对你的服务进行分析)。
var system = require('system');
var page = require('webpage').create();
page.viewportSize = { width: 1024, height: 768 };
page.open("<URL to chat server service>", function (status) {
// Check for page load success
if (status !== "success") {
console.log("Unable to connect");
phantom.exit();
} else {
console.log("Client connected ");
//after connecting you may extract further information, taking screenshots etc. refer the phantom.js API for further details
}
});
你是否使用任何框架(如socket IO)进行websocket通信?
可以考虑使用Jmeter来实现这个目的。虽然它目前还不支持WebSocket,但可以使用TCP采样器完成任务。
或者您可以获取一个插件,为JMeter添加WebSocket支持:http://github.com/maciejzaleski/JMeter
无需多言,JMeter和WebSocket插件都是开源且免费使用的。
我会使用Node.js来完成,这样你就可以使用与实际客户端中相同的websocket客户端库。