负载测试websocket服务器?
Posted
技术标签:
【中文标题】负载测试websocket服务器?【英文标题】:Load test websocket server? 【发布时间】:2015-08-20 20:21:33 【问题描述】:想法
我想确定一个 websocket 服务器:
最大并发连接数 任何错误测试
据我所知,要完成这项工作,我需要一个不错的 websocket 测试套件。到目前为止,我只尝试使用Thor。但它不允许我发送额外的数据。
问题
websocket 服务器需要一个令牌来连接,因此为什么 Thor 不能开箱即用,我需要一种方法来使用测试软件发送一个令牌。我想将此部分保留在测试中,因为它必须向另一台机器进行身份验证,因此如果我删除该部分,则不会是真正的负载测试。
tornado server.py 文件的代码:
class WebSocketHandler(tornado.websocket.WebSocketHandler):
def check_origin(self, origin):
return True
def open(self, *args):
self.id = self.get_argument("id")
accessToken = self.get_argument("accessToken")
#print "socket opened id: %s
self.stream.set_nodelay(True)
addActive(accessToken)
clients[self.id] = "id": self.id, "accessToken":accessToken, "object": self
对让 Thor 工作的测试套件或方法有什么想法吗?
【问题讨论】:
【参考方案1】:当我必须对 WebSocket 应用程序执行负载测试时,我使用了Apache JMeter。它不支持开箱即用的 WebSocket,但可以通过 plugin 或一些 Java 编码实现。
请参阅WebSocket Testing With Apache JMeter 指南,了解如何使用 JMeter 进行操作的方法和说明
【讨论】:
以上是关于负载测试websocket服务器?的主要内容,如果未能解决你的问题,请参考以下文章
Play WebSocket 客户端用于负载测试另一个 Play WebSocket 服务器应用程序
如何使用 JMeter 对 Websocket 进行负载测试?