【问题标题】:How to limit my node.js client connections to 2?如何将我的 node.js 客户端连接限制为 2?
【发布时间】:2013-10-05 23:08:18
【问题描述】:

我基本上试图只允许 2 个客户端同时连接到应用程序。我应该如何处理?

这是我的服务器代码:

var express = require('express'),
    app = express(),
    server = require('http').createServer(app),
    io = require('socket.io').listen(server);

var osc = require('node-osc');

var client = new osc.Client('127.0.0.1', 12345);

server.listen(3000);

app.get('/', function(req, res){

    res.sendfile(__dirname + '/index.html');
});

io.sockets.on('connection', function(socket){
    socket.on('send message', function(data){
        client.send('/oscAddress', parseInt(data));
    });
});

【问题讨论】:

    标签: node.js express websocket socket.io


    【解决方案1】:

    你可以试试

    server.maxConnections = 2;
    

    从未使用过它,但如果我相信Node.js documentation,这似乎是可行的方法

    【讨论】:

    • 我试过这个.. 但由于某种原因,我现在发送的鼠标位置数据很慢.. 或者时不时地工作,即使我只打开了 2 个客户端
    • 如果每次鼠标移动都发送数据,那么你不是一个客户端,每次发送都被服务器视为客户端。这就是它对数据进行排队的原因。你为什么要首先限制 2 个客户?
    • 我正在尝试将我的手机设置为 arduino 的控制器。它的方式是:browser-server-open-frameworks(via osc)-arduino 等。我同时只需要 2 个控制器。不多。我想在其他用户断开连接时替换它们。
    • 我接受了答案,因为它解决了我问的问题。但是..我没有问正确的问题。我的问题仍然存在.. 数据似乎正在排队和超时等等
    • 您也许应该考虑一种基于令牌、cookie 或连接池的解决方案来控制它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多