2012-11-30 21 views
5

में अधिकतम http क्लाइंट कनेक्शन कैसे सेट करें मुझे लिखने वाले मॉड्यूल द्वारा उपयोग किए जाने वाले आउटबाउंड http सॉकेट की संख्या में वृद्धि करने की आवश्यकता है। मैं जानता हूँ कि इसे का उपयोग विश्व स्तर पर इस करने के लिए संभव है:Node.js

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

अन्य मॉड्यूल को प्रभावित किए बिना एक मॉड्यूल के maxSocket सीमा संलेखन के लिए सबसे अच्छा पैटर्न क्या है?

उत्तर

-1

यह देखते हुए कि सेटिंग निर्धारित करता है कि प्रति होस्ट कितने समवर्ती कनेक्शन उपलब्ध हैं, इसे विशेष रूप से व्यक्तिगत मॉड्यूल के लिए सेट करने का कोई तरीका नहीं है। आपको क्या करना चाहिए हालांकि यह सुनिश्चित कर लें कि आप उपयोगकर्ता द्वारा पहले से निर्दिष्ट किए गए समवर्ती कनेक्शन की संख्या को कम नहीं कर रहे हैं। उदाहरण के लिए, यदि कोई अपना अधिकतम सॉकेट 5000 पर सेट करता है, और आप इसे अपने मॉड्यूल में 1000 पर सेट करते हैं, तो बुरी चीजें हो सकती हैं। मैं निम्नलिखित

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

उत्तर नहीं। एक गैर-वैश्विक अधिकतम सॉकेट सीमा के साथ लेखक मॉड्यूल के लिए एक रास्ता खोज रहे हैं – thesmart

1

आपका सबसे अच्छा विकल्प की तरह कुछ की सिफारिश करेंगे हर http के लिए एक एजेंट वस्तु पारित करने के लिए है और https का अनुरोध आप अपनी पसंद के लिए कॉन्फ़िगर maxSockets साथ, कर रहे हैं। इसका अन्य मॉड्यूल पर कोई प्रभाव नहीं पड़ेगा। http://nodejs.org/docs/latest/api/http.html#http_http_request_options_callback देखें।

यदि आप सीधे http मॉड्यूल पर निर्भर होने के बजाय स्वयं को ढांचा का उपयोग कर रहे हैं, तो यह मुश्किल हो सकता है और कुछ पैचिंग की आवश्यकता होती है।