2012-11-30 26 views
5

私が書いているモジュールで使用できるアウトバウンドのHTTPソケットの数を増やす必要があります。私はそれを使用してグローバルこのを行うことが可能です知っている:Node.jsで最大HTTPクライアント接続を設定する方法

// increase max sockets 
http.globalAgent.maxSockets = 1000; 

他のモジュールに影響を与えることなく、モジュールのmaxSocket制限をオーサリングするための最良のパターンとは何ですか?

答えて

-1

ホストごとに使用できる同時接続数は設定によって決まりますが、個々のモジュールごとに設定する方法はありません。ただし、ユーザーが既に指定したものから同時接続数を減らさないようにする必要があります。たとえば、誰かがmaxSocketsを5000に設定し、モジュールで1000に設定した場合、悪いことが起こる可能性があります。

var max = 1000; 
if(http.globalAgent.maxSockets < max) { 
    http.globalAgent.maxSockets = max; 
} 
+0

答えはありません。非グローバルな最大ソケット制限を持つモジュールを作成する方法を探しています – thesmart

1

あなたの最善の選択肢は、作成しているすべてのhttpとhttpsリクエストにAgentオブジェクトを渡し、maxSocketsを好みに合わせて設定することです。これは他のモジュールには影響しません。 http://nodejs.org/docs/latest/api/http.html#http_http_request_options_callbackを参照してください。

httpモジュールに直接依存するのではなく、フレームワークを自分で使用している場合は、難しく、パッチを当てる必要があります。

関連する問題