ठीक है, यह कुछ समय पहले पूछा गया था, और मुझे पार्टी के लिए देर हो रही है। फिर भी, यहां कुछ जोड़ना है।
जैकी, आपने इसे बहुत पसंद किया है। आपका चित्रण दिखाता है कि कैसे लोड संतुलन को सबसे छोटे और midsized प्रतिष्ठानों पर संभाला जाता है।
आपको विली तरारेउ द्वारा लोड बैलेंसिंग परिचय पढ़ना चाहिए जो कि नकेडिब से जुड़ा हुआ है। यह अभी भी मान्य है, और यह एक अच्छा परिचय है।
आपको यह विचार करने की आवश्यकता है कि ये आपकी आवश्यकताओं के अनुसार कैसे फिट होते हैं:
- टीसीपी / आईपी स्तर लोड बैलेंसर्स (लिनक्स वर्चुअल सर्वर एट अल)। उच्चतम कनेक्शन प्रति सबसे कम गति, उच्चतम गति, "HTTP" नहीं देख सकता है।
- HTTP स्तर लोड बैलेन्सर (HAProxy, nginx, Apache 2.2, Pound, Microsoft ARR, और अधिक)। उच्च ओवरहेड, HTTP देख सकता है, HTTP को gzip कर सकता है, SSL कर सकता है, चिपचिपा सत्र लोड बैलेंसिंग कर सकता है।
- HTTP रिवर्स प्रॉक्सीज़ (Apache ट्रैफिक सर्वर, वार्निश, स्क्विड)। कैश-सक्षम ऑब्जेक्ट्स (कुछ वेबपेज, सीएसएस, जेएस, इमेज) को रैम में स्टोर कर सकते हैं और बैकएंड वेबसर्वर को शामिल किए बिना उन्हें बाद के क्लाइंट के लिए अग्रेषित कर सकते हैं। अक्सर वही कुछ काम कर सकते हैं जो L7 HTTP लोड बैलेंसर्स करते हैं।
एक दूसरा बैलेन्सर है क्योंकि मुझे यकीन है कि कुछ समय पर बैलेन्सर को भी मदद की आवश्यकता होगी।
तो यह बात पक्की। लेकिन लोड संतुलन सरल है, और अक्सर एक एकल लोड बैलेंसर तेजी से जा सकता है । मैं इस लेख से जुड़ता हूं, जो वेब में एक तंत्रिका को मारा करता है, जो एक उदाहरण के रूप में एक एकल आधुनिक सर्वर ballpark क्या प्रदर्शन प्रदान कर सकता है। इससे पहले कि आप की जरूरत है कई एलबी का उपयोग न करें। जब आपको एक सामान्य दृष्टिकोण की आवश्यकता होती है तो बहुत ही फ्रंट (या DNS राउंड रॉबिन) पर आईपी लेवल लोड बैलेन्सर होते हैं, जो HTTP लेवल लोड बैलेन्कर्स में जा रहे हैं, प्रॉक्सी और वेबैप सर्वर पर जा रहे हैं।
"बैलेंसर / एस" क्या होना चाहिए और उन्हें कैसे सेट किया जाए, इस पर सर्वोत्तम अभ्यास करने में मदद करें।
मुसीबत की स्थिति सत्र राज्य से निपटने और कुछ हद तक विफलता राज्य व्यवहार है। लोड बैलेंसर्स की स्थापना स्वयं तुलनात्मक रूप से सीधी है।
यदि आप 2-4 बैकएंड वेबएप सर्वर का उपयोग कर रहे हैं, तो मूल आईपी पते के आधार पर स्थिर हैशिंग व्यवहार्य हो सकता है। यह वेब सर्वर के बीच साझा सत्र स्थिति की आवश्यकता से बचा जाता है। प्रत्येक वेबएप नोड कुल ट्रैफ़िक का 1 / N देखता है, और ग्राहक-से-सर्वर मैपिंग सामान्य ऑपरेशन में स्थिर है। हालांकि यह बड़े इंस्टॉलेशन के लिए अच्छा नहीं है।
दो सबसे अच्छा लोड संतुलन एल्गोरिदम, भावना वे उच्च लोड और यहां तक कि लोड वितरण के तहत सौम्य व्यवहार है, में राउंड रोबिन और सच्चे यादृच्छिक लोड संतुलन कर रहे हैं। इन दोनों के लिए आवश्यक है कि आपके वेब एप्लिकेशन में वेबएप नोड्स पर वैश्विक सत्र स्थिति उपलब्ध हो। यह कैसे किया जाता है यह वेबएप्प टेक स्टैक पर निर्भर करता है; लेकिन आम तौर पर इसके लिए मानक समाधान उपलब्ध हैं।
यदि न तो स्थिर हैशिंग, और न ही साझा सत्र राज्य आपके लिए एक अच्छा फिट हैं, तो विकल्प आम तौर पर ' चिपचिपा सत्र ' लोड संतुलन और प्रति-सर्वर सत्र स्थिति है। ज्यादातर मामलों में यह ठीक काम करता है, और यह पूरी तरह से व्यवहार्य विकल्प है।
बैलेंसर / देखें कि प्रत्येक अपाचे उदाहरण पर कितने कनेक्शन हैं (आंतरिक आईपी या अनन्त आईपी के कुछ विन्यास सूची के माध्यम से) और समान रूप से कनेक्शन वितरित करता है
हाँ, कुछ साइटें इसका उपयोग करती हैं। कई अलग-अलग लोड संतुलन एल्गोरिदम के लिए कई नाम हैं जो मौजूद हैं। यदि आप राउंड रॉबिन या रैंडम (या वेटेड राउंड रॉबिन, वेटेड रैंडम) चुन सकते हैं, तो मैं आपको ऊपर दिए गए कारणों से ऐसा करने की सलाह दूंगा।
अंतिम बात: यह मत भूलो कि कई विक्रेता (F5, सिस्को और अन्य लोग हाई-एंड, fx कोयोट पॉइंट और केम्प टेक्नोलॉजीज पर अधिक उचित मूल्य पर) परिपक्व लोड संतुलन साधने की पेशकश करते हैं ।