लोड बैलेंसर्स आने वाले क्लाइंट अनुरोधों को एप्लिकेशन सर्वर और डेटाबेस जैसे कंप्यूटिंग संसाधनों में वितरित करते हैं। प्रत्येक मामले में, लोड बैलेंसर कंप्यूटिंग संसाधन से उपयुक्त क्लाइंट को प्रतिक्रिया देता है। लोड बैलेंसर्स प्रभावी हैं:
अस्वस्थ सर्वर पर जाने से अनुरोधों को रोकना ओवरलोडिंग संसाधनों को रोकना विफलता के एक भी बिंदु को खत्म करने में मदद करना लोड बैलेंसरों को हार्डवेयर (महंगे) या HAProxy जैसे सॉफ़्टवेयर के साथ लागू किया जा सकता है।
अतिरिक्त लाभों में शामिल हैं:
SSL समाप्ति - आने वाले अनुरोधों को अस्वीकार करें और सर्वर प्रतिक्रियाओं को एन्क्रिप्ट करें ताकि बैकेंड सर्वरों को इन संभावित महंगे ऑपरेशनों को करने की आवश्यकता न हो प्रत्येक सर्वर पर X.509 प्रमाणपत्र स्थापित करने की आवश्यकता को हटाता है सत्र दृढ़ता - कुकीज़ जारी करें और एक विशिष्ट ग्राहक के अनुरोधों को उसी तरह से रूट करें यदि वेब एप्लिकेशन सत्रों का ट्रैक नहीं रखते हैं विफलताओं से बचाने के लिए, सक्रिय-निष्क्रिय या सक्रिय-सक्रिय मोड में या तो कई लोड बैलेंसर्स सेट करना आम है।
लोड बैलेंसर्स विभिन्न मैट्रिक्स के आधार पर ट्रैफ़िक को रूट कर सकते हैं, जिनमें शामिल हैं:
बिना सोचे समझे कम से कम लाद दिया सत्र / कुकीज़ राउंड रॉबिन या वेटेड राउंड रॉबिन परत ४ परत 7 परत 4 लोड संतुलन अनुरोधों को वितरित करने के तरीके का निर्णय करने के लिए लेयर 4 लोड बैलेंसर्स परिवहन परत की जानकारी को देखते हैं। आम तौर पर, इसमें स्रोत, गंतव्य आईपी पते और हेडर में पोर्ट शामिल होते हैं, लेकिन पैकेट की सामग्री नहीं। लेयर 4 लोड अपस्ट्रीम सर्वर से और नेटवर्क एड्रेस ट्रांसलेशन (NAT) के लिए आगे और पीछे से नेटवर्क पैकेट लोड करता है।
परत 7 लोड संतुलन अनुरोधों को कैसे वितरित किया जाए, यह तय करने के लिए लेयर 7 लोड बैलेंसर्स आवेदन परत को देखते हैं। इसमें हेडर, संदेश और कुकीज़ की सामग्री शामिल हो सकती है। लेयर 7 लोड बैलेंसर्स नेटवर्क ट्रैफ़िक को समाप्त करता है, संदेश पढ़ता है, लोड-बैलेंसिंग निर्णय करता है, फिर चयनित सर्वर से एक कनेक्शन खोलता है। उदाहरण के लिए, एक लेयर 7 लोड बैलेंसर वीडियो ट्रैफ़िक को उन सर्वरों को निर्देशित कर सकता है जो वीडियो को होस्ट करते हैं, सुरक्षा-कठोर सर्वरों को अधिक संवेदनशील उपयोगकर्ता बिलिंग ट्रैफ़िक को निर्देशित करते हैं।
लचीलेपन की लागत पर, लेयर 4 लोड बैलेंसिंग में लेयर 7 की तुलना में कम समय और कंप्यूटिंग संसाधनों की आवश्यकता होती है, हालांकि कमोडिटी हार्डवेयर पर प्रदर्शन प्रभाव न्यूनतम हो सकता है।
क्षैतिज स्केलिंग लोड बैलेंसर्स क्षैतिज स्केलिंग, प्रदर्शन और उपलब्धता में सुधार करने में भी मदद कर सकते हैं। कमोडिटी मशीनों का उपयोग करके स्केलिंग करना अधिक लागत प्रभावी है और अधिक महंगी हार्डवेयर पर एकल सर्वर को स्केल करने की तुलना में अधिक उपलब्धता के परिणामस्वरूप होता है, जिसे वर्टिकल स्केलिंग कहा जाता है। विशेष हार्डवेयर सिस्टम की तुलना में कमोडिटी हार्डवेयर पर काम करने वाली प्रतिभाओं के लिए काम पर रखना आसान है।
नुकसान (ओं): क्षैतिज स्केलिंग स्केलिंग क्षैतिज रूप से जटिलता का परिचय देती है और इसमें क्लोनिंग सर्वर शामिल होते हैं सर्वर को स्टेटलेस होना चाहिए: उनमें किसी भी उपयोगकर्ता से संबंधित डेटा जैसे सत्र या प्रोफ़ाइल चित्र नहीं होना चाहिए सत्रों को एक केंद्रीकृत डेटा स्टोर में संग्रहीत किया जा सकता है जैसे कि डेटाबेस (SQL, NoSQL) या लगातार कैश (Redis, Memcached) डाउनस्ट्रीम सर्वर जैसे कैश और डेटाबेस को अपस्ट्रीम सर्वर के पैमाने के साथ अधिक समकालिक कनेक्शन को संभालने की आवश्यकता होती है नुकसान (ओं): लोड बैलेंसर लोड बैलेंसर एक प्रदर्शन अड़चन बन सकता है अगर इसके पास पर्याप्त संसाधन नहीं हैं या यदि यह ठीक से कॉन्फ़िगर नहीं किया गया है। बढ़ी हुई जटिलता में विफलता के परिणाम के एक बिंदु को खत्म करने में मदद करने के लिए एक लोड बैलेंसर का परिचय। एक एकल लोड बैलेंसर विफलता का एक एकल बिंदु है, कई लोड बैलेंसरों को कॉन्फ़िगर करने से जटिलता बढ़ जाती है।