【问题标题】:Opening multiple websocket connections in single app在单个应用程序中打开多个 websocket 连接
【发布时间】:2016-11-29 11:19:47
【问题描述】:

我需要对我们的 websocket 服务进行负载测试。 有没有办法从单个工作站打开多个 websocket 连接?

我已经尝试使用 npm wswebsocketmodules 来使用 NodeJS 启动它们。它适用于单个连接,但是当我尝试在 for 循环中打开它们时,它会引发异常或仅使用最后一个打开的客户端。

【问题讨论】:

    标签: javascript node.js websocket


    【解决方案1】:

    如果您想从单个工作站执行此操作,您可以使用子进程:

    app.js:

    var cp = require('child_process');
    var children = [];
    var max = 10; // tweak this to whatever you want
    for(var i = 0; i<max; i++){
        children[i] = cp.fork('./child.js');
        .on('error', function(e) {
            console.log(e);
        }).on('message',function(m){
            console.log(m)
        }).on('exit', function(code) {
          console.log('exit with code',code);
        });
    }
    

    然后在 child.js 中,只需要一个启动连接的脚本。您还可以使用子进程 API 在父子进程之间发送消息

    【讨论】:

    • 谢谢!这对我有帮助。 npm websocket 也终于成功了!
    猜你喜欢
    • 2021-05-10
    • 1970-01-01
    • 2012-09-29
    • 2014-03-04
    • 1970-01-01
    • 2019-06-25
    • 2018-09-23
    • 2023-03-23
    • 2012-03-04
    相关资源
    最近更新 更多