html - एक ब्राउज़र में अधिकतम समानांतर http कनेक्शन?




web-applications persistent-connection (8)

मैं एक http सर्वर (धूमकेतु, रिवर्स AJAX, आदि) के लिए कुछ निलंबित कनेक्शन बना रहा हूँ। यह ठीक काम करता है, लेकिन मुझे लगता है कि ब्राउज़र केवल एक ही डोमेन को दो निलंबित कनेक्शन की अनुमति देता है। इसलिए यदि कोई उपयोगकर्ता अपने ब्राउज़र के टैब 1 में अपना वेब ऐप देख रहा है, तो उसे टैब 2 में लोड करने का भी प्रयास करता है, उन्होंने मेरी साइट पर दो स्वीकृत कनेक्शन का उपयोग किया है।

मुझे लगता है कि मैं कुछ वाइल्डकार्ड डोमेन चीज कर सकता हूं, जहां मेरा http सर्वर मेरी साइट पर किसी भी पते को हल करता है जैसे:

*.mysite.com/webapp  -> 123.456.789.1 (the actual ip of my server)

इसलिए:

a.mysite.com/webapp
b.mysite.com/webapp
c.mysite.com/webapp

सभी अभी भी इंगित करते हैं (www.mysite.com/webapp) लेकिन ब्राउज़र उन्हें अलग-अलग डोमेन मानता है, इसलिए मैं 2 कनेक्शन सीमा में नहीं चलता हूं। क्या ये सच है?

भले ही यह सत्य है - क्या सभी डोमेन पर प्रति ब्राउज़र सक्रिय कनेक्शन की संख्या की कोई सीमा है? मान लें कि मैं ऊपर की योजना का उपयोग करता हूं - उदाहरण के लिए फ़ायरफ़ॉक्स केवल किसी भी समय 24 समांतर कनेक्शन की अनुमति देता है? कुछ इस तरह:

1) a.mysite.com/webapp
2) www.download.com/hugefile.zip
3) b.mysite.com/webapp
4) c.mysite.com/webapp
...
24) x.mysite.com/webapp
25) // Error - all 24 possible connections currently in use!

मैंने अभी उदाहरण के रूप में 24 कनेक्शन / फ़ायरफ़ॉक्स उठाए हैं।



  1. हां, वाइल्डकार्ड डोमेन आपके लिए काम करेगा।
  2. कनेक्शन पर किसी भी सीमा के बारे में पता नहीं है। यदि कोई ब्राउज़र विशिष्ट होगा तो सीमाएं।

इस about:config देख रहे about:config जीएनयू / लिनक्स (उबंटू) पर फ़ायरफ़ॉक्स 33 पर about:config , और मैंने पाया connections :

network.http.max-कनेक्शन: 256

इस बात का उत्तर देने की संभावना है कि पूरे डोमेन में प्रति ब्राउज़र सक्रिय कनेक्शन की संख्या की कोई सीमा है

network.http.max-persistent-connections-per-proxy: 32

network.http.max-persistent-connections-प्रति-सर्वर: 6

दो संपत्तियों को छोड़ दिया ...

network.websocket.max-कनेक्शन: 200

(दिलचस्प, ऐसा लगता है कि वे प्रति सर्वर सीमित नहीं हैं लेकिन वैश्विक http कनेक्शन से डिफ़ॉल्ट मान कम है)


इसका कोई निश्चित उत्तर नहीं है, क्योंकि प्रत्येक ब्राउज़र के पास इसकी अपनी कॉन्फ़िगरेशन है, और यह कॉन्फ़िगरेशन बदला जा सकता है। यदि आप इंटरनेट पर खोज करते हैं तो आप इस सीमा को बदलने के तरीके ढूंढ सकते हैं (आमतौर पर उन्हें "प्रदर्शन वृद्धि विधियों" के रूप में ब्रांडेड किया जाता है।) यदि आपके वेबसाइट द्वारा इसकी आवश्यकता हो तो अपने उपयोगकर्ताओं को ऐसा करने की सलाह देना उचित हो सकता है।


ध्यान दें कि एक सर्वर के अधिकतम कनेक्शन प्रति सर्वर को अत्यधिक संख्या में बढ़ाते हैं (जैसा कि कुछ साइटें सुझाती हैं) अन्य उपयोगकर्ताओं को होस्टिंग योजनाओं के साथ छोटी साइटों से लॉक कर सकती है जो सर्वर पर कुल एक साथ कनेक्शन को सीमित करती हैं।


प्रति सर्वर / प्रॉक्सी के साथ-साथ डिफ़ॉल्ट एक साथ लगातार कनेक्शन की संख्या:

Firefox 2:  2
Firefox 3+: 6
Opera 9.26: 4
Opera 12:   6
Safari 3:   4
Safari 5:   6
IE 7:       2
IE 8:       6
IE 10:      8
Chrome:     6

सीमा प्रति-सर्वर / प्रॉक्सी है, इसलिए आपकी वाइल्डकार्ड योजना काम करेगी।

एफवाईआई: यह विशेष रूप से HTTP 1.1 से संबंधित है; अन्य प्रोटोकॉल में अलग-अलग चिंताओं और सीमाएं होती हैं (यानी, एसपीडीवाई, टीएलएस, HTTP 2)।


फ़ायरफ़ॉक्स इस सेटिंग में उस नंबर को संग्रहीत करता है (आपको इसे about:config ): network.http.max-connections-per-server

अधिकतम कनेक्शन के लिए, फ़ायरफ़ॉक्स इस सेटिंग में संग्रहीत करता है: network.http.max-connections


ब्राउजरवर्सन | कनेक्शनफेरहोस्टनाम | MaxConnections

  1. क्रोम 34/32 6 10
  2. आईई 9 6 35
  3. आईई 10 8 17
  4. आईई 11 13 17
  5. फ़ायरफ़ॉक्स 27/26 6 17
  6. सफारी 7.0.1 6 17
  7. एंड्रॉइड 4 6 17
  8. क्रोममोबाइल 18 6 16
  9. आईई मोबाइल 9 6 60

पहला मान ConnectionsPerHostname है और दूसरा मान MaxConnections है

स्रोत: http://www.browserscope.org/?category=network&v=top

नोट: कनेक्शन PerHostname समवर्ती http अनुरोधों की अधिकतम संख्या है जो ब्राउज़र एक ही डोमेन पर बनाएंगे। समवर्ती कनेक्शन की संख्या बढ़ाने के लिए, कोई अलग डोमेन में संसाधनों (जैसे छवियों) होस्ट कर सकता है। हालांकि, आप MaxConnections से अधिक नहीं हो सकते हैं, कुल डोमेन में कनेक्शन की अधिकतम संख्या कुल डोमेन में खुल जाएगी।







web-performance