我有一台运行 node.js (v0.1.32) 的机器,带有一个 tcp 服务器 (tcp.createServer) 和一个 http 服务器 (http.createServer)。 http 服务器被基于 comet 的应用程序在端口 80 上发出的长轮询请求(每次持续 50 秒)击中。出于相同目的,iphone 应用程序在端口 8080 上有 tcp 套接字连接。
发现服务器有一段时间无法处理更多的连接(尤其是tcp连接,而http连接似乎正常!!??),重启后才正常。
为了对连接进行负载测试,我创建了一个 tcp 服务器并生成了 2000 个请求,并发现在达到机器上的最大文件描述符限制(默认 1024)后连接开始失败。这是一个非常小的数字。
所以,这里有一个新手问题:如何扩展我的应用程序以处理 node.js 上更多的连接数以及我如何处理这个问题。
有没有办法找出当前有多少事件连接?
谢谢 分享
最佳答案
您可以使用以下方法获取连接数:
var server = http.createServer(app);
server.getConnections(function(error, count) {
console.log(count);
});
使用它你可以继续检查连接,当它超过阈值时关闭之前的连接。希望能帮助到你。
关于javascript - 如何检查 node.js 中打开的连接数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3214453/