وبسایتهای بزرگ چگونه بازدیدکنندههای میلیونی خود را مدیریت میکنند؟ این سوالی است که ممکن است برای شما یا هرکس دیگری پیش آمده باشد که وبسایتهای بزرگی مثل یاهو و گوگل چگونه بازدیدکنندههای خود را که گاه تا میلیونها نفر میرسند، میبینند و مدیریت میکنند؟
البته این شرایط بستگی به نوع سرور دارد. مشخصا یک سرور (Server) کوچک میتواند حجم کثیری از بازدیدکنندگان را مدیریت کند. بهعنوان مثال ممکن است شما یک وب سایت داشته باشید که شامل چند صفحه ایستا (static) است. (ایستا یعنی صفحاتی که همه بازدیدکنندگان میتوانند به یک شکل آن را ببینند).
براساس گزارشی که هاست آو ورکس ارائه کرده است در شرایطی وب سایت شما میتواند میلیونها بازدیدکننده را در روز مدیریت کند که وبسایت شما روی سروری قرار داشته باشد که از پردازنده ۵۰۰ مگاهرتزی از نوع Celeron بهره برده باشد و مجهز به سیستمعامل Windows NT یا لینوکس باشد. در این شرایط شما باید این سرور را با یک خط T3 یعنی با سرعت ۴۵ میلیون بیت بر ثانیه، به اینترنت متصل کنید، به این ترتیب است که سرور یاد شده میتواند صدها هزار بازدیدکننده را در روز مدیریت کند.
بسیاری از مراکز ارائه خدمات اینترنتی (ISP) یک سرور اختصاصی با مشخصاتی که ارائه شد دارند که آن را با قیمتی حدود ۱۰۰۰ دلار در ماه یا کمتر، اجاره میدهند.
اگر شما هم جزو آن دسته از دارندگان وبسایتهایی هستید که پرببیننده هستند و روزانه صدها هزار و حتی میلیونها بازدیدکننده دارند، در این حالت سروری با مشخصاتی که اعلام شده برای شما بسیار مناسب است، اما در صورتی که یکی از مشکلاتی که در زیر آورده میشود، بروز کند، باید دست نگه دارید:
یکی از سرورهای شما با مشکل مواجه شود. (در این صورت تا آماده شدن سرور جدید، وبسایت شما در دسترس نخواهد بود یا در اصطلاح Down میماند).
شاخههای وبسایت شما بسیار بزرگ یا پیچیده باشد.
صفحات وبسایت شما متغیر باشند، یعنی بخواهید برای هر کاربر تغییراتی در صفحات ایجاد کنید.
برای تولید و نمایش محتوای وبسایت نیاز به پردازش اضافی داشته باشید.
بنابراین از آنجایی که اکثر وبسایتهای بزرگ با همه این موارد دست به گریبان هستند، نیاز به سرورهایی قدرتمندتر دارند. در واقع سه استراتژی کلی برای مدیریت چنین وبسایتهایی وجود دارد.
وبسایت میتواند روی یک سرور بسیار قدرتمند از نظر پردازشی، حافظه رم، فضای ذخیرهسازی و... قرار بگیرد.
برای مدیریت بازدیدکنندگان فراوان، میتوان وب سایت را روی چندین سرور قرار داد.
وبسایت میتواند به صورت ترکیبی از هر دو روش قبلی در کنار یکدیگر استفاده کند.
اگر شما از سایتهایی بازدید میکنید که هر بار آدرس آنها تغییر میکند، میتوان انتظار داشت که وبسایت مورد نظر از استراتژی دوم استفاده میکند.
در واقع سایت روی چندین سرور قرار داشته که روی هرکدام، نرمافزاری مشابه وجود دارد و در هر سرور دسترسی به نسخه مشابهی از صفحات سایت امکانپذیر است.
درخواستها برای نمایش صفحات بر اساس یکی از روشهای زیر به یکی از سرورها ارسال میشوند:
با استفاده از DNS یا Domain Name Server. در واقع DNS یک سرویس اینترنتی است که آدرس وبسایتها را به آیپی آنها تبدیل میکند. هر بار که درخواستی برای مشاهده صفحات سایت به سمت سرور ارسال شود، DNS در بین آیپیهای سرور، به دنبال یک آیپی که دسترسی به آن محتملتر است میگردد و از آنجا که هر سرور با یک آیپی به اینترنت متصل است، پس بار پردازشی درخواستها بین سرورهای مختلفی که سایت روی آنها قرار دارد تقسیم میشود.
همانطور که اشاره شد در حالت مدیریت وبسایت روی چند سرور، هر کدام دسترسی یکسانی به تمام صفحات دارند، بنابراین هر کدام از سرورها که درخواست به سمت آن ارسال شود، صفحهای یکسان را نمایش خواهند داد.
استفاده از سوئیچرهای متعادلکننده بار پردازشی سایت. در این روش نیز ابتدا تمامی درخواستها به یک سرور ارسال میشوند و سپس به یکی از سرورهای در دسترس، ارسال میشود.
سوئیچ میتواند تشخیص دهد که بار پردازشی هر سرور چقدر است و بر همین اساس میتوان بار پردازشی تمامی سرورهای موجود را یکسان کرد. در حالتی که این روش فرضا با ۳ سرور استفاده شود، حتی اگر یکی از سرورها با مشکل مواجه شود، تقریبا هیچ تاثیری روی وبسایت نخواهد داشت.
همانطور که گفتیم مزیت استفاده از روش دوم در واقع این است که اگر مشکلی برای هر کدام از سرورها پیش بیاید، از سرورهای دیگر برای اجرای درخواستها استفاده خواهد شد و در نتیجه سایت با قطعی مواجه نخواهد شد.
امکان افزایش ظرفیت نیز وجود دارد، البته این روش خالی از عیب هم نیست زیرا تمامی سرورها برای پردازش درخواستها، مجبور به ارتباط با یک بانک داده مرکزی (Central DataBase) هستند.