我需要增加一个模块,我写信使用出站HTTP插座的数量。 我知道这是可能做到这一点在全球使用:
// increase max sockets
http.globalAgent.maxSockets = 1000;
什么是创作一个模块的maxSocket限制不影响其他模块的最佳模式?
我需要增加一个模块,我写信使用出站HTTP插座的数量。 我知道这是可能做到这一点在全球使用:
// increase max sockets
http.globalAgent.maxSockets = 1000;
什么是创作一个模块的maxSocket限制不影响其他模块的最佳模式?
你最好的选择是代理对象传递给每一个HTTP和HTTPS请求你正在与配置根据自己的喜好maxSockets。 这将对其他模块没有影响。 见http://nodejs.org/docs/latest/api/http.html#http_http_request_options_callback 。
如果您正在使用自己的框架,而不是直接依靠HTTP模块,它可能是困难的,需要一些修补。
鉴于设置决定的并发连接数是如何每台主机可用,也没有办法为单独的模块设置这个具体。 但是什么你应该做的是确保你没有减少什么,用户已经指定的并发连接数。 例如,如果有人将其maxSockets到5000,而你是你的模块中设置为1000,不好的事情可能发生。 我建议像下面
var max = 1000;
if(http.globalAgent.maxSockets < max) {
http.globalAgent.maxSockets = max;
}