مفاهیم

وب سرور چیست و چگونه کار می‌کند؟

مقایسه انواع وب سرورها

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

اگر با توجه به توضیحات بالا علاقه مند شدید که درمورد وب سرور بیشتر بدانید با ما تا انتهای این مقاله همراه باشید.

 

وب سرور چیست؟

وب سرور نرم افزاری است که می تواند درخواست های کاربر در شبکه جهانی وب را پاسخ دهد. یک وب سرور درخواست های ورودی شبکه را از طریق HTTP و چندین پروتکل مرتبط دیگر پردازش می کند. مهم ترین وظیفه یک وب سرور ذخیره، پردازش و ارائه صفحات وب به کاربر است. ارتباط بین کاربر و سرور با استفاده از پروتکل انتقال ابر متن یا همان HTTP صورت می گیرد. صفحات تحویل داده شده اغلب اسناد HTML هستند که علاوه بر محتوای متن ممکن است شامل تصاویر، شیوه نامه ها و اسکریپت ها نیز باشند.

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

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

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

بسیاری از وب سرورهای عمومی از زبان های برنامه نویسی ASP (صفحات فعال سرور) یا PHP  و سایر زبانهای اسکریپت نویسی پشتیبانی می کنند. که هر کدام از این زبانها در حالی که نرم افزار اصلی سرور بدون تغییر باقی می ماند، باعث ایجاد رفتار متفاوت وب سرور با فایل ها می گردد. PHP بسیار سریعتر و آسانتر ذخیره می شود اما محتوای پویا را ارائه نمی دهد.

نحوه کار وب سرورها

نحوه کار وب سرور
نحوه کار وب سرور

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

مطالعه کنید:  هاست دانلود چیست و چه کاربردی دارد؟

مرورگری که بازدید کننده سایت شما از آن استفاده می کند مانند Firefox ،Chrome یا Internet Explorer  باید سروری را پیدا کند که اطلاعات سایت شما در آن واقع شده باشد. اگر در گذشته با سروری که سایت شما در آن وجود دارد متصل شده باشد، این فرایند آسان است، به خصوص اگر محتوای وب شما ذخیره (کش) شده باشد. در صورتی که مرورگر نداند سرور شما کجاست، نیاز است که آدرس IP سرور را در DNS ها جستجو کند.

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

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

انواع وب سرور

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

از جمله معروف ترین وب سرورها می توان به موارد زیر اشاره کرد:

  • Apache
  • Lite speed
  • Nginx
  • Microsoft IIS

وب سرور آپاچی

Apache-Web-Server

وب سرور آپاچی یک نرم افزار رایگان و متن باز است که توسط شرکت Apache Software توسعه یافته است و نام آن از اسم یک قبیله هندی آمریکایی گرفته شده است و از انتشار اولین نسخه آن حدود ۲۵ سال می گذرد. از ویژگی های خوب بجز رایگان و متن باز بودن می توان به ساختار ساده، سازگاری با سایت های وردپرسی و …. را نام برد. اما این وب سرور در سایت هایی که ترافیک زیادی دارند مشکل دارد و مناسب سایت های کوچک و متوسط است و با اینکه موارد امنیتی آن منظم بروز رسانی می شود اما باز هم به خاطر ساختاری که دارد گاها با مشکل امنیتی روبرو می شود.

وب سرور لایت اسپید

lite speed web server

وب سرور لایت اسپید در سال ۲۰۰۲ توسط شرکت Lite Speed که در ابتدا یک گروه مهندسی در نیوجرسی آمریکا بودند، طراحی شد. این گروه اعتقاد داشتند که وب سرور آنها نیاز به خرید سرورهای گران قیمت و منابع زیاد را کاهش می دهد. وب سرور آنها با عملکرد و سرعت بالا، ادعایشان را ثابت کردند و امروزه سایت هایی که از این وب سرور استفاده می کنند رو به افزایش است.

سرعت حداقل ۶ برابری نسبت به آپاچی، پشتیبانی از کنترل پنل های سی پنل، دایرکت ادمین و … ، استفاده از httpd ،boa و TUX برای محتواهای استاتیک و استفاده از mod_php برای محتواهای پویا که بیش از ۵۰ درصد سریعتر بوده و سایر مواردی که در پایینتر به آنها اشاره شده، شرکت گنجه هاست را واداشت که از این وب سرور قدرتمند استفاده کند.

مطالعه کنید:  هاست چیست؟ معرفی انواع هاست

برخی از ویژگی های مهم وب سرور Lite Speed :

  • سازگاری با آپاچی و htaccess.
  • رابط کاربری و نصب آسان
  • مدیریت ساده سرور به کمک GUI
  • بروزرسانی خودکار
  • مجهز بودن به Anti-DdoS که منجر به امنیت بالا می گردد.
  • قابلیت اتصال بیش از هزار اتصال هم زمان
  • بازیابی سرور پس از قطعی های ناگهانی
  • Real-time service monitoring
  • بیشترین بهره بری از perl
  • و …..

وب سرور  Nginx

nginx web server

انجین ایکس یک وب سرور رایگان و متن باز است که در سال ۲۰۰۲ توسط Igor Sysoev پیدایش یافت و در سال ۲۰۰۴ اولین نسخه آن منتشر یافت، این وب سرور با هدف بهره مندی هر چه بیشتر از RAM طراحی گردید. در صورتی که کنترل پنل سی پنل، دایرکت ادمین و پلسک بر روی این وب سرور نصب گردد نیاز است که نقش های به کار رفته در htaccess. برای این وب سرور تعریف شود و همین طور قابلیت ساخت Vhost را  به صورت خودکار ندارد.

وب سرور IIS

IIS_web server

IIS یک وب سرور ویندوزی است که توسط شرکت Microsoft ارائه گردید. در محیط Visual Basic برنامه نویسی گردیده است. IIS مخفف کلمه ی (Internet Information Server) به معنای سرور اطلاعات اینترنتی است. این وب سرور با اینکه در سیستم عامل ویندوز قابل اجرا است اما با توجه به سرعت کمی که دارد نسبت به سایر وب سرورها محبوبیت چندانی ندارد.

مقایسه وب سرور Lite Speed با Apache و Nginx

وب سرور ها اغلب به طور مستقیم با Apache مقایسه می شوند، زیرا سایر وب سروها به عنوان جایگزین آپاچی طراحی شده اند. وب سرورهای لایت اسپید و انجین ایکس از لحاظ زیر ساخت به هم شبیه تر هستند و به همین دلیل مقایسه آنها با آپاچی درست به نظر نمی رسد برای رفع این مشکل سه تا وب سرور معروف لینوکس را ما با هم مقایسه کرده ایم.

وب سرور لایت اسپید با تمام کنترل پنل هایی که بر مبنای آپاچی طراحی شده اند مانند cPanel ،Direct Admin و Plesk سازگار است.

با استفاده از LiteSpeed، شما از هر دو ویژگی زیر بهترین استفاده را کنید:

  • مقیاس پذیری مبتنی بر رویداد مشابه nginx
  • امکان استفاده از ابزارهای آشنا و همه گیر Apache برای همه کارهای مدیریتی شما

اکنون به صورت جزئی تر به مقایسه وب سرورها می پردازیم:

کارایی

سرعت و راحتی در امر مدیریت یک ویژگی بسیار مهم برای در طراحی سایت است زمانی که شما وب سرور لایت اسپید را انتخاب می کنید می توانید تغییر در سرعت و راحتی استفاده از ویژگی های آن را احساس کنید.web server keep alive

LiteSpeed با داشتن موتور کش پیشرفته داخلی نیاز به پروکسی معکوس HTTPS یا لایه ی دوم ذخیره سازی اضافی که مورد نیاز آپاچی است را برطرف می کند، بعلاوه nginx نمی تواند فایلهای حافظه پنهان را ذخیره کند اما LiteSpeed این کار را به خوبی انجام می دهد.

web server http2

امنیت

امنیت یک فاکتور مهم بین کسب و کارهای اینترنتی است، به همین دلیل Litespeed از قوانین ModSecurance پشتیبانی می کند (دقیقاً مانند Apache وnginx ) اما به لطف عملکرد کارآمد وب سرور LiteSpeed، این کار را بدون خطر انجام می دهد. LSWS همچنین با پشتیبانی reCAPTCHA، از اقدامات ضد DDoS پشتیبانی می کند.

مقرون به صرفه بودن

Lite Speed با هدف استفاده حداکثری از منابع سخت افزاری ایجاد گردیده و در مجموع نسبت به دو وب سرور دیگر در این زمینه موفق تر بوده و تا حد بسیار زیادی نیاز سخت افزاری را کاهش داده است.

مطالعه کنید:  مقایسه انواع هارد

مفهوم محدودیت بار در وب سرور

هر وب سرور دارای یک محدودیت بار مشخص است. معمولاً بین ۲ تا ۸۰۰۰۰ است، به طور پیش فرض بین ۵۰۰ تا ۱۰۰۰ را در هر IP (یا اتصال TCP) می تواند مدیریت کند. که این تعداد به عوامل زیر بستگی دارد:

  • تنظیمات درونی
  • نوع درخواست HTTP
  • نوع محتوا ( استاتیک یا پویا)
  • محتوا ذخیره یا کش شده باشد یا خیر؟
  • محدودیت های سخت افزاری و نرم افزاری سیستم عامل رایانه ای که وب سرور بر روی آن اجرا می شود.

زمانی که تعداد درخواست بیش از محدودیت وب سرور باشد، وب سرور نمی تواند پاسخگو ردخواست ها باشد به این حالت Overload می گویند.

دلایل اضافه بار (Overload)

over load web server

  • ترافیک وب بیش از حد مجاز توسط هزاران یا حتی میلیون ها مشتری در یک فاصله زمانی کوتاه
  •  DDOS
  • کرم های رایانه ای که باعث ترافیک غیر طبیعی روی سرور می شوند.
  • ربات های اینترنتی در وب سایت های بزرگی که دارای فیلتر و محدودیت خاصی نیستند.
  • خرابی در تعدادی از سرور ها که باعث افزایش بار بر روی سایر وب سرورها گردد.

علائم اضافه بار (Overload)

علائم یک وب سرور که اصطلاحا اورلود شده است:

  • درخواست ها با تاخیر (احتمالاً طولانی) ارائه می شوند. (از ۱ ثانیه تا چند صد ثانیه)
  • وب سرور کد خطای HTTP مانند ۵۰۰، ۵۰۲، ۵۰۳، ۵۰۴، ۴۰۸ یا حتی ۴۰۴ را نمایش می دهد که می تواند نشان دهنده اورلود بودن وب سرور باشد.
  • وب سرور قبل از نمایش هر محتوا، اتصالات TCP را قطع می کند یا رد می کند.
  • در موارد بسیار نادر، وب سرور تنها بخشی از مطالب درخواست شده را برمی گرداند.

تکنیک هایی که از Overload شدن وب سرور جلوگیری می کند

  1. مدیریت ترافیک شبکه با استفاده از :

ذخیره محتوای استاتیک سایت شما یا  محتواهایی که اغلب تغییر نمی کنند، یک راه عالی برای تحویل سریعتر محتوای سایت به افراد است.

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

وب سرور لایت اسپید دارای یک افزونه اختصاصی به نام LSCache است که محتوای استاتیک را در حافظه فعال خود ذخیره می کند و در صورتی که کاربر سایت شما مجددا آن را درخواست کند به سرعت برای کاربر نمایش می دهد و با این کار در زمان و منابع سایت شما صرفه جویی می کند.

  1. استفاده از نام دامنه یا آدرسهای IP برای ارائه مطالب مختلف (استاتیک و پویا) توسط سرورهای وب مجزا. به عنوان مثال:

http://images.example.com و  http://example.com

  1. استفاده از نام های دامنه یا رایانه های مختلف برای جدا کردن پرونده های بزرگ از پرونده های کوچک و متوسط؛ هدف این است که بتوانیم با استفاده از تنظیمات مختلف ، پرونده های کوچک و متوسط را ذخیره کرد و به صورت کارآمدتر فایل های بزرگ (بیش از ۱۰ – ۱۰۰۰ مگابایت) را نمایش داده شود.
  2. منابع سخت افزاری بیشتری (مثل RAM ، دیسک و … ) به هر سرور اضافه کرد.
  3. تنظیم پارامترهای سیستم عامل برای قابلیت های سخت افزاری و کاربردهای آن
  4. استفاده از برنامه های رایانه ای کارآمدتر برای وب سرورها و غیره

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن