پاسخ : چه طوری چندتا سرور روی یه دامین کار میکنن
نقل قول:
نوشته اصلی توسط
bluecloud
سلام دوست عزیز
برای اینکار شما باید دو یا چند سرور تهیه کنید و روی همشون وب سرویس نصب کنید که در مثال میشه 1.1.1.1 و 2.2.2.2 و بعدش سورس کد سایتتون رو روی هر دو سرور نصب کنید. ضمن اینکه باید File Replication بین این دو سرور راه بندازید که هر فایلی به هر قسمت سایت اضافه میشه هر دو سرور داشته باشند یا از فایل شیر استفاده کنید. بعدش سرور سومی تهیه میکنید که روش دیتا بیس سوار میشه و در کانفیگ هر دو سایتتون که یک محتوا رو دارن تنظیم میکنید که از اون یک دیتابیس استفاده کنند. در DNS میایید آدرس سایت که میشه
www.example.com رو دو A Record براش درست میکنید مثلا :
www.example.com 1.1.1.1
www.example.com 2.2.2.2
با اینکار زمانی که کلاینت درخواست میده به یه کلاینت سرور 1.1.1.1 معرفی میشه و به کلاینت بعدی 2.2.2.2 و کلاینت بعدی 1.1.1.1 و کلاینت بعدی 2.2.2.2 که اصطلاحا میگن DNS داره Round Robin می کنه.
البته این راه ساده ترین حالتش هست ولی راهکارهای انترپرایز تری هم هستن مثل دستگاه های کمپانی F5 که در دنیا در بحث لود بالانس حرف اول رو می زنه.
سلام من این چیزایی رو که گفتین در باره اش تحقیق کردم فقط چند چیز رو متوجه نشدم این که میگین فایل به هر قسمت سایت اضافه بشه منظورتون فایل های کد سایت هست یا فایل هایی که کاربرا اپلود یا دانلود میکنن
بعدش این دیتابیسی که گفتین شامل فایل ها هم میشه (همون سوال قبلیم) یا فقط شامل mysql اینجور موارد میشه
بعدش این دی ان اس ها برای تمامی سرور ها دونه دونه به صورت یکسان ایجاد بشن
پاسخ : چه طوری چندتا سرور روی یه دامین کار میکنن
در خصوص بسیاری از کیس های کاری میرور کاربردی نیست چون سرعت انتقال فایل ها حتی در حالت شبکه نزدیک و قدرتمند و دیسک ssd کند تر از اون هست که با پروسس های کوچک قابل قیاس باشد در نتیجه تاخیر در به روز رسانی سرورها خواهید داشت. ما چندین متد برای افزایش منابع داریم که دوستان اشاره کردند، اما شاید اشتباه اکثر پست ها حرف های گفته شده در خصوص گوگل است. چون در این حوزه خاص گوگل خیلی صاحب منصب و اعتبار نیست. غول این حوزه در گذشته یاهو و امروزه پیش در این عرصه فیسبوک و مایکروسافت هستند.
متدهای مختلف از آماتوری ترین (یا قدیمی ترین) شیوه ها مانند تقسیم بخش های یک وب سایت و قرار گیری اونها روی سرورهای مختلف با آدرس دهی و ساب دامین دهی گرفته تا ایجاد کلاسترینگ و کلود و لود بالانسینگ همگی مباحث مختلفی هستند که هر کدوم بسته به نوع کار و ساختار مورد نیاز باید استفاده شود. بحث CDN اینجا خیلی ارتباطی نداره، میشه از مباحث فوق برای ایجاد یک CDN قدرتمند بهره برد. میشود هم CDN ساده و مختصر داشت. برخی دچار سو تفاهم میشوند که CDN مثلا یک گزینه هم ردیف با کلاسترینگ و کلود هست.
اما در خصوص موضوع تاپیک،
شما در قدم نخست باید روشن کنید کجا مشکل دارید (ِیا قراره مشکل دار بشید) :
- ظرفیت فضای دیسک - Storege
- ظرفیت خواندن و نوشتن دیسک - I/O
- حافظه ... Ram
- پردازنده .. CPU
- پردازش موازی / گرافیکی ... GPU
- ترافیک شبکه ... Network bandwidth
- ظرفیت شبکه (کانال) ... Channel Capacity
- و ...
سپس بر اساس موارد هدف، میروید سراغ راه حل ها. این مسیر علمی و درست کار هست.
متاسفانه شخصا شاهد این بودم که شرکت های بزرگ اینترنتی یا برخی سازمان ها داخل کشور هم به شکل غیر علمی با صرف منابع زیاد به کلاسترینگ یا ایجاد کلود دست زدند. صرفا هدر دادن منابع بوده است،
در حقیقت اکثر موارد خود (یا مشتری) فریبی و یک نمایش از تکنولوژی مدرن و سطح بالا است تا استفاده و بهره مندی واقعی.