معتبر به جای سخت افزار یا نرم افزار تخصصی، متوازن سازی بار را انجام می دهد. سرور نام، آدرس های IP سرورهای مختلف را به نوبت یا به صورت گردشی برمی گرداند.
روش گردشی وزنی
در متوازن سازی بار گردشی وزنی، می توانید وزن های مختلفی را بر اساس اولویت یا ظرفیت آنها به هر سرور اختصاص دهید. سرورهایی با وزن بالاتر، ترافیک ورودی برنامه بیشتری را از سرور نام دریافت خواهند کرد.
روش هش IP
در روش هش IP، متوازن کننده بار یک محاسبه ریاضی به نام هشینگ را روی آدرس IP مشتری انجام می دهد. آدرس IP مشتری را به یک عدد تبدیل می کند که سپس به سرورهای جداگانه نگاشت می شود.
متوازن سازی بار پویا
الگوریتم های متوازن سازی بار پویا قبل از توزیع ترافیک، وضعیت فعلی سرورها را بررسی می کنند. در زیر نمونه هایی از الگوریتم های متوازن سازی بار پویا آورده شده است.
روش کمترین اتصال
اتصال یک کانال ارتباطی باز بین یک مشتری و یک سرور است. هنگامی که مشتری اولین درخواست را به سرور ارسال می کند، آنها احراز هویت می کنند و یک اتصال فعال بین یکدیگر برقرار می کنند. در روش کمترین اتصال، متوازن کننده بار بررسی می کند که کدام سرورها کمترین اتصالات فعال را دارند و ترافیک را به آن سرورها ارسال می کند. این روش فرض می کند که همه اتصالات به قدرت پردازش مساوی برای همه سرورها نیاز دارند.
روش کمترین اتصال وزنی
الگوریتم های کمترین اتصال وزنی فرض می کنند که برخی از سرورها می توانند اتصالات فعال بیشتری را نسبت به سایرین مدیریت کنند. بنابراین، می توانید وزن ها یا ظرفیت های مختلفی را به هر سرور اختصاص دهید و متوازن کننده بار درخواست های جدید مشتری را به سروری با کمترین اتصالات بر اساس ظرفیت ارسال می کند.
روش کمترین زمان پاسخ
زمان پاسخ، کل زمانی است که سرور برای پردازش درخواست های ورودی و ارسال پاسخ صرف می کند. روش کمترین زمان پاسخ، زمان پاسخ سرور و اتصالات فعال را برای تعیین بهترین سرور ترکیب می کند. متوازن کننده های بار از این الگوریتم برای اطمینان از خدمات سریعتر برای همه کاربران استفاده می کنند.
روش مبتنی بر منبع
در روش مبتنی بر منبع، متوازن کننده های بار با تجزیه و تحلیل بار فعلی سرور، ترافیک را توزیع می کنند. نرم افزار تخصصی به نام عامل روی هر سرور اجرا می شود و میزان استفاده از منابع سرور مانند ظرفیت محاسباتی و حافظه آن را محاسبه می کند. سپس، متوازن کننده بار قبل از توزیع ترافیک به آن سرور، عامل را برای منابع آزاد کافی بررسی می کند.
متوازن سازی بار چگونه کار می کند؟
شرکت ها معمولاً برنامه خود را روی چندین سرور اجرا می کنند. چنین آرایش سروری مزرعه سرور نامیده می شود. درخواست های کاربر به برنامه ابتدا به متوازن کننده بار می رود. سپس متوازن کننده بار هر درخواست را به یک سرور واحد در مزرعه سرور که برای رسیدگی به درخواست مناسب تر است، هدایت می کند.متوازن سازی بار مانند کاری است که یک مدیر در یک رستوران انجام می دهد. رستورانی را با پنج پیشخدمت در نظر بگیرید. اگر به مشتریان اجازه داده شود پیشخدمت های خود را انتخاب کنند، ممکن است یک یا دو پیشخدمت با کار بیش از حد مواجه شوند در حالی که بقیه بیکار هستند. برای جلوگیری از این سناریو، مدیر رستوران مشتریان را به پیشخدمت های خاصی که برای خدمت به آنها مناسب تر هستند، اختصاص می دهد.
انواع متوازن سازی بار چیست؟
می توانیم متوازن سازی بار را بر اساس آنچه متوازن کننده بار در درخواست مشتری برای هدایت مجدد ترافیک بررسی می کند، به سه دسته اصلی طبقه بندی کنیم.
متوازن سازی بار برنامه
برنامه های کاربردی پیچیده مدرن دارای چندین مزرعه سرور با چندین سرور اختصاص داده شده به یک عملکرد برنامه واحد هستند. متوازن کننده های بار برنامه به محتوای درخواست مانند هدرهای HTTP یا شناسه های جلسه SSL نگاه می کنند تا ترافیک را هدایت کنند.به عنوان مثال، یک برنامه تجارت الکترونیک دارای یک فهرست محصول، سبد خرید و عملکردهای پرداخت است. متوازن کننده بار برنامه، درخواست های مرور محصولات را به سرورهایی ارسال می کند که حاوی تصاویر و فیلم ها هستند اما نیازی به حفظ اتصالات باز ندارند. در مقایسه، درخواست های سبد خرید را به سرورهایی ارسال می کند که می توانند اتصالات مشتری زیادی را حفظ کنند و داده های سبد را برای مدت طولانی ذخیره کنند.
متوازن سازی بار شبکه
متوازن کننده های بار شبکه آدرس های IP و سایر اطلاعات شبکه را برای هدایت بهینه ترافیک بررسی می کنند. آنها منبع ترافیک برنامه را ردیابی می کنند و می توانند یک آدرس IP ثابت را به چندین سرور اختصاص دهند. متوازن کننده های بار شبکه از الگوریتم های متوازن سازی بار ایستا و پویا که قبلاً توضیح داده شد برای متعادل کردن بار سرور استفاده می کنند.
متوازن سازی بار سرور جهانی
متوازن سازی بار سرور جهانی در چندین سرور توزیع شده جغرافیایی رخ می دهد. به عنوان مثال، شرکت ها می توانند سرورهایی در چندین مرکز داده، در کشورهای مختلف و در ارائه دهندگان ابری شخص ثالث در سراسر جهان داشته باشند. در این حالت، متوازن کننده های بار محلی، بار برنامه را در یک منطقه یا ناحیه مدیریت می کنند. آنها سعی می کنند ترافیک را به یک مقصد سرور که از نظر جغرافیایی به مشتری نزدیکتر است، هدایت کنند. آنها ممکن است ترافیک را فقط در صورت خرابی سرور به سرورهای خارج از منطقه جغرافیایی مشتری هدایت کنند.
متوازن سازی بار DNS
در متوازن سازی بار DNS، دامنه خود را برای مسیریابی درخواست های شبکه در میان مجموعه ای از منابع در دامنه خود پیکربندی می کنید. یک دامنه می تواند مربوط به یک وب سایت، یک سیستم ایمیل، یک سرور چاپ یا سرویس دیگری باشد که از طریق اینترنت قابل دسترسی است. متوازن سازی بار DNS برای حفظ در دسترس بودن برنامه و متعادل کردن ترافیک شبکه در میان مجموعه ای از منابع توزیع شده جهانی مفید است.
انواع فناوری متوازن سازی بار چیست؟
متوازن کننده های بار یکی از دو نوع هستند: متوازن کننده بار سخت افزاری و متوازن کننده بار نرم افزاری.
متوازن کننده های بار سخت افزاری
یک متوازن کننده بار مبتنی بر سخت افزار یک دستگاه سخت افزاری است که می تواند به طور ایمن گیگابایت ترافیک را به صدها سرور مختلف پردازش و هدایت کند. می توانید آن را در مراکز داده خود ذخیره کنید و از مجازی سازی برای ایجاد چندین متوازن کننده بار دیجیتال یا مجازی که می توانید به صورت متمرکز مدیریت کنید، استفاده کنید.
متوازن کننده های بار نرم افزاری
متوازن کننده های بار مبتنی بر نرم افزار برنامه هایی هستند که تمام عملکردهای متوازن سازی بار را انجام می دهند. می توانید آنها را روی هر سروری نصب کنید یا به عنوان یک سرویس شخص ثالث کاملاً مدیریت شده به آنها دسترسی داشته باشید.
مقایسه متوازن کننده های سخت افزاری با متوازن کننده های نرم افزاری
متوازن کننده های بار سخت افزاری نیاز به سرمایه گذاری اولیه، پیکربندی و نگهداری مداوم دارند. همچنین ممکن است از آنها به ظرفیت کامل استفاده نکنید، به خصوص اگر فقط برای مدیریت افزایش ترافیک در ساعات اوج مصرف، یکی را خریداری کنید. اگر حجم ترافیک به طور ناگهانی فراتر از ظرفیت فعلی آن افزایش یابد، این امر تا زمانی که بتوانید یک متوازن کننده بار دیگر را خریداری و راه اندازی کنید، روی کاربران تأثیر می گذارد.در مقابل، متوازن کننده های بار مبتنی بر نرم افزار بسیار انعطاف پذیرتر هستند. آنها می توانند به راحتی افزایش یا کاهش مقیاس داشته باشند و با محیط های محاسبات ابری مدرن سازگارتر هستند. همچنین راه اندازی، مدیریت و استفاده از آنها در طول زمان هزینه کمتری دارد.