我有一个随机停止工作的nodeJS应用程序。有时没有问题,它可以正常工作,有时输出Cannot GET /
。为什么会这样,我应该如何解决呢?
答案 0 :(得分:0)
这很可能是因为nodeJS内置了HTTP代理的连接池限制,请参阅the nodeJS documentation。虽然python的默认连接限制为 100 ,但在nodeJS中,默认情况下 5 。
查看有关此常见问题的更多信息here。
解决此问题的一种简单方法是将http的maxSockets选项增加到更高的数字。示例:
var http = require('http');
http.globalAgent.maxSockets = 100;
var server = http.createServer(myApp);
server.listen(80);
您甚至可以将其设置为无限制:
http.globalAgent.maxSockets = Infinity;