মুজাহিদুল ইসলাম নাহিদঃ লোড ব্যালান্সিং মূলত বিভিন্ন ধরনের হতে পারে, প্রতিটি ধরনেরই নির্দিষ্ট কাজে ব্যবহৃত হয়। প্রধানত চারটি প্রকারের লোড ব্যালান্সিং প্রচলিত:
1. স্ট্যাটিক লোড ব্যালান্সিং
2. ডায়নামিক লোড ব্যালান্সিং
3. ডিএনএস লোড ব্যালান্সিং
4. হাইব্রিড লোড ব্যালান্সিং
**স্ট্যাটিক লোড ব্যালান্সিং**
স্ট্যাটিক লোড ব্যালান্সিংয়ে, সার্ভারগুলোতে অনুরোধগুলো নির্দিষ্ট পদ্ধতি অনুযায়ী আগে থেকেই ভাগ করে রাখা হয়। এই ধরনের ব্যালান্সিংয়ের জন্য কোনো বিশেষ পরিস্থিতিতে পরিবর্তন আনার প্রয়োজন হয় না। সাধারণত দুটি প্রধান স্ট্যাটিক লোড ব্যালান্সিং কৌশল ব্যবহার করা হয়:
রাউন্ড রবিন (Round Robin): এখানে প্রতিটি অনুরোধ সিরিয়ালি বা ঘুরে ঘুরে বিভিন্ন সার্ভারে পাঠানো হয়। উদাহরণস্বরূপ, তিনটি সার্ভারের ক্ষেত্রে প্রথম অনুরোধ প্রথম সার্ভারে, দ্বিতীয়টি দ্বিতীয় সার্ভারে এবং তৃতীয়টি তৃতীয় সার্ভারে যাবে। এভাবে ঘুরে ঘুরে আবার চক্র চলতে থাকে।
লিস্ট কনেকশন (Least Connection): এখানে লোড ব্যালান্সার চেক করে কোন সার্ভারে বর্তমানে সবচেয়ে কম সংখ্যক অনুরোধ রয়েছে এবং সেখানে নতুন অনুরোধ পাঠায়। উদাহরণস্বরূপ, যদি প্রথম সার্ভারে ১০টি অনুরোধ থাকে এবং দ্বিতীয় সার্ভারে ৫টি অনুরোধ থাকে, তবে নতুন অনুরোধটি দ্বিতীয় সার্ভারে যাবে।
**ডায়নামিক লোড ব্যালান্সিং**
ডায়নামিক লোড ব্যালান্সিং স্ট্যাটিক লোড ব্যালান্সিংয়ের থেকে কিছুটা বেশি ফ্লেক্সিবল, কারণ এখানে সার্ভারের পরিস্থিতি অনুযায়ী অনুরোধগুলো পাঠানো হয়। এটি স্ট্যাটিক লোড ব্যালান্সিংয়ের মতো পূর্বনির্ধারিত না হয়ে রিয়েল-টাইমে তথ্য অনুযায়ী কাজ করে। উদাহরণস্বরূপ, যদি কোনও সার্ভার বেশি লোডেড থাকে, তবে লোড ব্যালান্সার অনুরোধগুলো কম লোডের সার্ভারে পাঠিয়ে দেয়। এটি ব্যবহারের সময় প্রতি মুহূর্তে সার্ভারের বর্তমান পরিস্থিতির উপর ভিত্তি করে কাজ করে।
**ডিএনএস লোড ব্যালান্সিং (DNS Load Balancing)**
ডিএনএস লোড ব্যালান্সিংয়ে ডোমেইন নেম সিস্টেম (DNS) ব্যবহার করে বিভিন্ন সার্ভারের ঠিকানায় অনুরোধ পাঠানো হয়। এখানে একটি নির্দিষ্ট ডোমেইনকে বিভিন্ন সার্ভার আইপি ঠিকানার সাথে যুক্ত করে রাখা হয়, এবং ব্যবহারকারীর অনুরোধ সেই সার্ভারগুলোর মধ্যে যে কোন একটিতে পৌঁছানো হয়। উদাহরণস্বরূপ, একটি ওয়েবসাইটের জন্য একই ডোমেইনের সাথে তিনটি সার্ভারের আইপি যুক্ত করা থাকে এবং ব্যবহারকারী যখন ঐ ডোমেইনে প্রবেশ করে, তখন ডিএনএস লোড ব্যালান্সার যেকোনো একটি সার্ভারে অনুরোধ পাঠায়।
**হাইব্রিড লোড ব্যালান্সিং**
হাইব্রিড লোড ব্যালান্সিং হলো স্ট্যাটিক এবং ডায়নামিক লোড ব্যালান্সিংয়ের সংমিশ্রণ, যেখানে বিভিন্ন লোড ব্যালান্সিং কৌশল একসাথে ব্যবহৃত হয়। এই পদ্ধতিতে একই সাথে একাধিক কৌশল বা প্রযুক্তি ব্যবহার করে ব্যবহারকারীর অনুরোধগুলোর যথার্থ ব্যালান্সিং নিশ্চিত করা হয়। উদাহরণস্বরূপ, একটি ওয়েব অ্যাপ্লিকেশনে রাউন্ড রবিন এবং লিস্ট কনেকশনের সমন্বয় ব্যবহার করে ট্রাফিক ম্যানেজ করা যেতে পারে।
লেখকঃ DevOps Engineer, LinkedIn: https://www.linkedin.com/in/nahid7846/