سلام دوستان عزیز وب سایت آموزشی پی وی لرن و وقت بخیر به علاقمندان آموزش تکنولوژی های اینترنتی. وب سرور چیست؟ در این جلسه به این موضوع و معماری وب سرور خواهیم پرداخت.
وب سرور رایانه ای است که محتوای وب در آن ذخیره می شود. در اصل از وب سرور برای میزبانی وب سایت ها استفاده می شود اما سرورهای وب دیگری نیز مانند gaming, storage, FTP, email و غیره وجود دارد.
وب سایت مجموعه ای از صفحات وب است ، در حالی که سرور نرم افزاری است که به درخواست منابع وب پاسخ می دهد.
وب سرور به یکی از دو روش زیر به درخواست مشتری پاسخ می دهد:
هنگامی که مشتری درخواست یک صفحه وب را ارسال می کند ، وب سرور برای صفحه درخواست شده جستجو می کند، در صورت یافتن صفحه درخواست شده ، آن را با پاسخ HTTP به مشتری ارسال می کند.
اگر صفحه وب درخواست شده یافت نشد ، وب سرور پاسخ HTTP را به صورت خطای ۴۰۴ (Error 404 Not found)، می دهد.
اگر مشتری برای منابع دیگری درخواست کرده باشد ، وب سرور برای ساختن پاسخ HTTP با سرور برنامه و فروشگاه داده تماس می گیرد.
معماری وب سرور دو روش زیر را دنبال می کند:
رویکرد همزمان یا Concurrent به سرور وب اجازه می دهد تا چندین درخواست مشتری را همزمان انجام دهد. با روش های زیر می توان به این نتیجه رسید:
چند فرایندی (Multi-process)
در این فرایند واحد (فرآیند والدین) چندین فرآیند کودک (child) تک رشته ای را آغاز می کند و درخواست های دریافتی را به این فرایندهای کودک توزیع می کند. هر یک از مراحل کودک وظیفه رسیدگی به درخواست واحد را بر عهده دارد.
این وظیفه فرایند والدین است که بارگیری را زیر نظر بگیرد و تصمیم بگیرد که آیا فرایندها باید خاتمه یابند یا خیر.
برخلاف Multi-process ، چندین فرآیند تک رشته ای ایجاد می کند.
این ترکیبی از دو رویکرد فوق است. در این روش چندین فرآیند ایجاد می شود و هر فرآیند چندین موضوع را آغاز می کند. هر یک از موضوعات یک اتصال دارند. استفاده از چندین موضوع در تک فرآیند منجر به بار کم تری در منابع سیستم می شود.
در جدول زیر پیشرو ترین سرورهای وب موجود امروز شرح داده شده است:
ردیف | توضیحات وب سرور |
---|---|
۱ | Apache HTTP Server این محبوب ترین وب سرور در جهان است که توسط بنیاد نرم افزار آپاچی- Apache Software Foundation ساخته شده است. وب سرور Apache یک نرم افزار منبع باز است و تقریباً در تمام سیستم عامل ها شامل Linux ، UNIX ، Windows ، FreeBSD ، Mac OS X و … قابل نصب است. حدود ۶۰٪ ماشین های وب سرور Apache Web Server را اجرا می کنند. |
۲٫ | (Internet Information Services (IIS (Internet Information Server (IIS یک وب سرور با کارایی بالا از مایکروسافت است. این وب سرور روی Windows NT / 2000 و پلت فرم های ۲۰۰۳ اجرا می شود (و ممکن است در نسخه جدید Windows آینده نیز وجود داشته باشد). IIS همراه با Windows NT / 2000 و ۲۰۰۳ است. از آن جا که IIS کاملاً یکپارچه با سیستم عامل است ، بنابراین اجرای آن بسیار ساده است. |
۳٫ | Lighttpd lighttpd ، تلفظ می شود lighty یک وب سرور رایگان است که با سیستم عامل FreeBSD توزیع می شود. این وب سرور منبع باز، سریع ، ایمن و از توان CPU بسیار کم تری استفاده می کند. Lighttpd همچنین می تواند بر روی سیستم عامل های Windows ، Mac OS X ، Linux و Solaris اجرا شود. |
۴٫ | Sun Java System Web Server این وب سرور از Sun Microsystems برای وب سایت های متوسط و بزرگ مناسب است. گر چه سرور رایگان است اما منبع باز نیست. با این حال ، بر روی Windows ، Linux و پلت فرم UNIX اجرا می شود. وب سرور Sun Java System از زبان ها ، اسکریپت ها و فناوری های مختلفی که برای وب ۲٫۰ مانند JSP ، Java Servlets ، PHP ، Perl ، Python و Ruby on Rails ، ASP و Coldfusion و غیره پشتیبانی می کند ، پشتیبانی می کند. |
۵٫ | Jigsaw Server (Jigsaw (W3C’s Server از کنسرسیوم وب جهان گستر (World Wide Web Consortium) آمد. Jigsaw Server منبع آزاد و رایگان است و می تواند بر روی پلت فرم های مختلف مانند Linux ، UNIX ، Windows و Mac OS X Free BSD و غیره اجرا شود. Jigsaw در جاوا نوشته شده است و می تواند اسکریپت های CGI و برنامه های PHP را اجرا کند. |
در این بخش از آموزش تکنولوژی اینترنت با مبحث وب سرور چیست؟ و معماری وب سرور همراه بودیم.
در قسمت بعدی به Proxy Server می پردازیم.