سرفصل های مهم

توزیع بار


یکی از رویکردهای کاربردی برای مدیریت بهتر درخواست ها بخصوص برای سایت های پربازدید، استفاده از چند سرور اصلی متشکل از تمامی اطلاعات و فایل هاست. به عبارت دیگر، می توانید فایل های یکسانی را بر روی سرورهای چندگانه بارگذاری کرده و پس از دریافت درخواست برای هر فایل، سرور آماده پاسخ را ارسال کند.

کلاسترینگ

برای عبور ترافیک از سرورهای لبه CDN میزبان کلود و توزیع درخواست ها بین چند سرور باید از کلاسترینگ استفاده کنید. 

در واقع پس از ساخت یک دسته از سرورها یا کلاستر، باید یک سیاست برای نحوه توزیع بار ترافیکی بین سرورها تعیین کنید. 

برای مثال اگر از روش کمترین اتصالات ( Least Connection ) استفاده کنید، ترافیک سایت به سمت سروری هدایت خواهد شد که کمترین تعداد کانکشن یا اتصال را در آن لحظه داشته باشد.

در نتیجه با داشتن این قابلیت بار سنگین از دوش یک سرور برداشته شده و بین سرورهای درون مدار با توجه به الگوریتم های مشخصی تقسیم می شود. نهایتاً تاخیر شبکه ای و احتمال از دسترس خارج شدن یک سرور به حداقل رسیده و تجربه کاربری نیز افزایش خواهد یافت.

در صورتی که از توزیع بار استفاده کنید، ممکن است زیرساخت شما به فرآیندی تحت عنوان failover نیاز پیدا کند.

Failover زمانی اتفاق می افتد که یک سرور آنطور که باید فعالیت نمی کند، و لود بلنسر فرآیندهای عادی خود را با سرورهای دیگر ادامه می دهد (یعنی یک جا به جایی به دلیل از ناتوانی یک زیرساخت).

یعنی اگر پشتیبانی در کار نباشد، یک لحظه از دسترس خارج شدنِ سرور، می تواند کل سایت یا اپلیکیشن را به اصطلاح down کرده و صدمات جبران ناپذیری به کسب و کار وارد کند.

سلامت سنجی

لود بلنسینگ (توزیع بار) باید دائماً از سلامت سرورها، یعنی وضعیت فعلی شان، ظرفیت و نحوه عملکردشان و معیارهای دیگر مطلع باشند. توزیع بار از طریق تست های سلامت یا سلامت سنجی های مکرر، سرورها را تحت نظر دارند. 

به طوری که اگر سرور یا کلاستری عملکرد کندی داشته باشد، لود بلنسر، بار ترافیکی کمتری به سمت آن هدایت خواهد کرد. اگر یک یا چند سرور به طور کلی از دسترس خارج شوند نیز توزیع کننده ترافیک را مجدداً به سمت کلاستری فعال و در دسترس هدایت خواهد کرد.

برای بهره مندی از مزایای توزیع بار به یک یا چند کلاستر نیاز خواهید داشت.

برای راه اندازی یک کلاستر نیز به چند سرور؛ این سرورها می توانند سرورهای فیزیکی شما یا سرورهای ابری تان باشند؛ 

این کار، redundancy و اطمینان خاطر را برای شما بهمراه خواهد داشت.

ساخت کلاستر

به منظور ساخت یک کلاستر این مراحل را طی کنید:

مرحله اول: یک کلاستر یا Pool بسازید.

منظور از استخر (Pool) در اینجا، فضایی است که چندین سرور با IP یا Hostname متفاوت از سایت شما میزبانی کنند.

برای اینکار کافیست سایت مورد نظر را در پنل میزبان کلود انتخاب کرده و سپس از منوی CDN ابری، وارد بخش توزیع بار شوید.

روی افزودن کلاستر جدید کلیک کنید و برای آن یک پروتکل، متد و نام انتخاب کنید.

منظور از پروتکل این است که برای مثال میخواهید درخواست های ارسالی از پروتکل HTTP را به سمت یک کلاستر و HTTPS را به کلاستری دیگر هدایت کنید.

*دقت داشته باشید که برای نامگذاری کلاستر نمی توانید از space و علائم استفاده کنید.

در مورد متد توزیع بار نیز می توانید در مقاله "توزیع بار" اطلاعات کاملی دریافت کنید.

پس از ساخت کلاستر، باید به آن سرور اضافه کنید. پس رو آیکن افزودن سرور مقابل کلاستر مورد نظر کلیک کنید.

برای سرورِ درون این کلاستر، یک وزن/اولویت و آدرس اضافه کنید. برای سایر سرورهای درون کلاستر نیز همین کار را تکرار کنید. 

علاوه بر این می توانید فرآیند ساخت کلاستر را با کمک API نیز انجام دهید.

رکوردهای DNS و گواهی SSL را برای کلاستر خود چک کنید و در صورت نیاز به اصلاح، به صفحه توزیع بار مراجعه کرده و تنظیمات را ویرایش کنید.