انواع وب سرورهای لینوکسی؛ کدام بهتر است؟

در این مقاله (انواع وب سرورهای لینوکسی؛ کدام بهتر است؟) با ما همراه باشید.
از وب سرور به عنوان برنامهای که مهمترین نقش را در یک سرویسِ میزبان وب به عهده دارد یاد شده است. در واقع نقش اصلی یک وب سرور این است که صفحات مختلف وب را به کاربران ارائه دهد. مکانیسم این کار هم به این صورت است که یک وب سرور با استفاده از http فایلهای درخواستی از طرف کاربران را به سیستمهای آنها ارسال میکند. وب سرورها انواع مختلفی دارند و بر روی سیستم عاملهایی همچون لینوکس، ویندوز، یونیکس و غیره نصب میشوند. تعدادی از مهمترین و پرکاربردترین وب سرورهای موجود از نوع لینوکسی هستند، به همین دلیل ما سعی داریم تا با مقایسه وب سرورهای لینوکسی به بررسی مشخصات این دسته از وب سرورها بپردازیم.
مقایسه وب سرورهای لینوکسی
انتخاب یک وب سرور مناسب برای راهاندازی یک وبسایت امری بسیار مهم است و به عوامل متعددی بستگی دارد. بنابراین، در ادامه به مقایسه وب سرورهای لینوکسی خواهیم پرداخت.اما بایستی بدانید بیشتر شرکتهایی که خدمات میزبانی وب را ارائه میدهند، وب سرورها را براساس نیاز مشتریان، تعداد مشتریان در یک وب سرور واحد، برنامههای کاربردی و نرم افزارهای مورد استفادهی مشتریان و مقدار ترافیک قابل پشتیبانی توسط یک وب سرور انتخاب میکنند. از آنجاییکه انواع مختلفی از وب سرورها وجود دارد و هر کدام از آنها خدمات خاصی را ارائه میدهد، بنابراین مقایسه وب سرورها میتواند به امر انتخاب یک وب سرور مناسب و البته یک هاست پرسرعت کمک کند.
1-وب سرور آپاچی (Apache)

Apache محبوبترین، رایجترین و البته ارزانترین نرمافزار مورد استفاده جهت Handle نمودن Request های وب است که توسط Apache Software Foundation برنامهنویسی و پشتیبانی میشود و روی هر دو پلتفرم ویندوز و لینوکس قابلنصب است (بیشتر بر روی لینوکس/یونیکس مورد استفاده قرار میگیرد).
این وب سرور بهصورت رایگان ارائه میشود و شاید یکی از دلایل محبوب بودن آن Open Source بودنش است که عدد ۴۳.۷ درصدی کل وب سرورهای دنیا را به خودش اختصاص داده است. وب سرور Apache، به دلیل انواع ماژول امنیتی در حالت پیشفرض امن، قابل اعتماد و سریع است، البته تنظیماتی در کانفیگ این وب سرور جهت افزایش این سه خصوصیت قابل انجام است که ما در این مقاله در ارتباط با آن صحبت نمیکنیم. همچنین جهت استفاده این وب سرور در محیطهای مختلف و پشتیبانی از بیشتر زبانهای برنامهنویسی مانند Python، Perl، PHP یا CGI یا …، Extension ها و Module هایی در دسترس است که میتوان جهت Extend نمودن وب سرور روی آن نصب نمود.
شاید به همین دلیل است که اکثر ارائهدهندههای خدمات هاستینگ برتر برای وردپرس، Apache را بهعنوان وب سرور انتخاب پیشنهاد می کنند. البته وردپرس بر روی دیگر وب سرورهای معرفی شده در این مقاله نیز بهخوبی کار خواهد کرد.
وب سرور Apache در ۴ نسخه ۱.۳ و ۲.۰ و ۲.۲ و ۲.۴ ارائه شده است. با توجه به Open Source بودن پروژه حتماً میبایست نسخه آخر این وب سرور استفاده گردد؛ چراکه برای نسخههای قدیمی پشتیبانی از سمت تیم برنامهنویس ارائه نمیشود.
اگر بخواهیم مقداری حرفهایتر به قضیه بپردازیم، لازم است بگوییم Apache پروسههای خود را بر روی سرور با نام httpd که مخفف HTTP daemon است فراخوانی میکند. همچنین جهت مدیریت دسترسی با احراز هویت( Authenticate ) در این وب سرور از ماژولهای mod_access، mod_auth، mod_digest و mod_auth_digest استفاده میگردد. وظیفه URL rewriting یا بازنویسی آدرس که بسیار کاربردی می باشد را ماژول mod_rewrite بر عهده دارد و در صورتی که قصد استفاده از پروکسی و ارجاع درخواستها به سرویسهای دیگر را داشته باشید، ماژول mod_proxy این کار را برایتان انجام میدهد. خدمات Secure Socket Layer یا SSL نیز توسط ماژول mod_ssl ارائه میگردد.
این وب سرور از Virtual Hosting نیز پشتیبانی مینماید، Virtual Hosting به شما اجازه میدهد بر روی یک سرور با یک Single IP با کمک سرویس DNS چندین دامنه را هاست کنید. این همان قابلیتی است که شرکت هاستینگ با استفاده از آن به شما سرویس هاست اشتراکی ارائه می نماید
مزایای وب سرور آپاچی
- قابلیت نصب بر روی دیگر سیستم عاملهای موجود از جمله لینوکس، یونیکس، ویندوز، FreeBSD و غیره را نیز دارد.
- آپاچی یک نرم افزار متن باز (Open Source) است و به همین دلیل امکان اضافه کردن ماژولهای مختلف به آن وجود دارد.
- پشتیبانی وب سرور آپاچی از زبانهای برنامهنویسی پرکاربردِ Perl، Python، Tcl و PHP از دیگر مزیتهای مهم آن است.
- در این وب سرور لینوکسی به دلیل وجود ماژولهای متعدد، امکان کنترل و محدود کردن درخواستهای کاربران برای مدیران فراهم شده است.
- آپاچی وب سروری ساده و پایداری است.
- امکان سفارشی سازی آن به دلیل داشتن یک ساختار ماژولار امکانپذیر است.
- آپاچی یک وب سرور رایگان است.
معایب Apache:
مشکلی که در وب سرور آپاچی دیده میشود این است که این وب سرور در ترافیکهای بالا منابع زیادی از سرور اشغال میکند و کل سرور را با اختلال و قطعی مواجه میکند. در واقع این مشکل مربوط به ساختار آپاچی است، بدین صورت که برای هر کانکشن یک فرآیند (پروسس) ایجاد میکند بنابراین با توجه به اینکه هرکدام از این پروسس ها Ram و CPU نیاز دارند، عملکرد سرور تحت تأثیر قرار خواهد گرفت. وب سرور آپاچی بهصورت process-based تعبیه شده و به همین دلیل است که زمانی که سایت شما ترافیک و پروسسهایی بالایی دارد، سایت از سمت تأمین کننده هاست غیرفعال و پیشنهاد ارتقاء به سرور مجازی یا اختصاصی دریافت میکنید.
2- وب سرور انجین ایکس (Nginx)

این وب سرور Open Source و یا متنباز است. Ngnix در سال 2004 معرفی شده و با توجه به قابلیت مقیاسپذیری (event-driven) آن، بر مبنای استفاده همزمان از منابع سرور استوار بوده است. این وب سرور قابلیت هندل کردن بیش از ۱۰۰۰۰ کانکشن همزمان با کمترین میزان مصرف حافظه را دارد. این وب سرور (Nginx/PHP٥-FPM) بر روی سرورهای اشتراکی پیادهسازی نمیشود اما بهترین انتخاب برای سرورهای مجازی با حافظه محدود است.
وب سرور Nginx خود یک وب سرور مستقل است و فقط بهعنوان یک پروکسی معکوس مقابل آپاچی محسوب نمیشود. این وب سرور مد یکپارچه برای PHP ندارد و نیاز است با استفاده از سرور جداگانه PHP-FPM مثل PHP5 ارتباط برقرار کند.
سایتهایی با ترافیک بالا که با وب سرور nginx اجرا شدهاند میتوان به Facebook, Instagram Netflix, WordPress, Intel, CNN اشاره کرد. سیستمعاملهای unix ,windows، mac از nginx پشتیبانی میکنند.
مزایای وب سرور انجین ایکس
- با سیستم عاملهای ویندوز و لینوکس سازگاری خوبی دارد.
- قابلیت برقراری همزمان بیش از ۱۰ هزار ارتباط را با مصرف فقط ۲.۵ مگابایت از حافظه را دارا است.
- امکان استفاده از آن به عنوان پراکسی وجود دارد.
- از مهمترین مزایای این وب سرور سرعت بالای آن است.
- میتواند تعداد پردازشها را محدود نماید.
- ساده و پایدار است.
- عملکرد بسیار بالایی دارد.
- انجین ایکس برنامهای متن باز است.
- این وب سرور نیز رایگان است.
معایب Nginx:
این وب سرور با فایل htacess و همچنین کنترل پنلهای مختلف سازگاری ندارد. البته ممکن است از نظر برخی افراد این مورد مشکل محسوب نشود و برای آن راهحلهای مختلفی وجود داشته باشد ( واقعا همین طور اسن و تقریبا هر چیزی که در Htaccess قابل کنترل است در تنظیمات انیجنسک نیز قابل پیاده سازی است )
nginx به دلیل نیاز به تنظیمات دستی و مشکل بودن تنظیمات و کانفیگ، بهراحتی مورد استفاده قرار نمیگیرد. البته بعضی از کنترل پنلهای هاستینگ نظیر دایرکت ادمین، تدابیری را جهت نصب اتوماتیک آن اتخاذ نمودهاند. پس از وب سرور apache این وب سرور nginx است که اقتصادی و مقرونبهصرفه است و به همین دلیل به دومین وب سرور محبوب از نظر کاربران اینترنتی تبدیل شده است،
3- وب سرور لایت اسپید (LiteSpeed)

وب سرور لایت اسپید مبتنی بر سرعت، امنیت، مقیاسپذیری و عملکرد بالا است، به همین دلیل این وب سرور بهترین انتخاب برای هاستهای اشتراکی است.
این وب سرور به دلیل استفاده از Mod_php در سرویسهای PHP ٥٠% سریعتر از وب سرور آپاچی برای پردازش اسکریپتهای PHP و ۶۰۰% سریعتر برای محتواهای استاتیک است.
این وب سرور نسبت به وب سرور آپاچی، منابع کمتری از سرور را مصرف میکند و در حالت کلی نیاز به سختافزار قوی ندارد، همچنین ترافیک بیشتری را پشتیبانی میکند و برای حفاظت از DDOS یکپارچه شده است. در حالت کلی تمام قابلیتهای وب سرور آپاچی را به نحوی کارآمدتر دارا است.
وب سرور لایت اسپید برخلاف آپاچی رویداد محور (event-driven) است یعنی برای هر کانکشن یک پروسس ایجاد نمیشود، در نتیجه منابع کمتری از سرور مصرف خواهد شد. میتوان گفت این یک حالت موثرتر برای مدیریت کانکشن هاست و بدین معنی است که با منابع کمتری از سرور، ترافیک بیشتری اداره میشود.
وب سرور لایت اسپید به دلیل تجاری و گران بودن هزینههای لایسنس مقرونبهصرفه نیست؛ اما به دلیل ضریب عملکرد و سرعتبالا محبوب شده است.
استفاده از litespeed به دلیل پنل تحت وب و تنظیمات آماده راحت است و کاربران نیز میتوانند بهسادگی آن را نصب و جهت راهاندازی وبسایت خود اقدام نمایند.
این وب سرور هم همانند آپاچی از فایل htacess. پشتیبانی میکند.
همچنین روی کنترل پنلهای سی پنل، دایرکت ادمین و … قابل پشتیبانی است.
مزایای وب سرور لایت اسپید
- برای وب سایتهای پربازدید و اشتراکی بسیار مناسب است.
- قابلیت پشتیبانی از چندین کانکشن را به طور همزمان دارد.
- مقیاس پذیری بالایی دارد.
- عملکرد لایت اسپید بالاست.
- سرعت آن فوقالعاده بالا بوده و از وب سرور آپاچی نیز بالاتر است.
- از امنیت بالایی برخوردار است و مجهز به Anti-DDoS میباشد.
- به طور کامل رایگان نیست.
- لایت اسپید وب سروری ساده و کار با آن آسان است.
- با هسته آپاچی سازگاری دارد.
- میزان حافظه کمتری نسبت به آپاچی مصرف میکند.
4- وب سرور تامکت (Apache Tomcat)

آخرین وب سرور مورد نظر در بحث مقایسه وب سرورهای لینوکسی، وب سرور تامکت است. وب سرور مزبور توسط شرکت آپاچی طراحی و عرضه شده است.
مزایای وب سرور تامکَت
- مهمترین مزیت تامکت این است که قابلیت پشتیبانی از Java Servlet و Java Serverرا دارد و باید گفت که بیشتر هم به همین قصد طراحی شده است.
- تامکت نیز همانند آپاچی قابلیت اجرا بر روی سیستم عاملهای ویندوز، لینوکس، یونیکس، FreeBSD و غیره را دارد.
- امکان پاسخگویی به هر درخواستی را امکانپذیر میسازد.
- وب سرور تامکت نزدیک به ۱ درصد از کل وبسایتها را پشتیبانی میکند.
- Tomcat از (SSL (Secure Socket Layer پشتیبانی می کند و بنابراین می تواند با استفاده از یک گواهی SSL برای تأمین امنیت داده های حساس با تهیه یک اتصال امن پیکربندی شود.
- Tomcat همچنین می تواند برای اجرای چندین برنامه وب در پورت های مختلف تنظیم شود. به عنوان مثال می توان سه برنامه را با شماره 8080، 8081، 9090 اجرا کرد. به طور پیش فرض Apache tomcat از پورت شماره 8080 استفاده می کند.
- کم حجم است، این بدان معناست که از منابع کمتری استفاده می کند، بنابراین به برنامه اجازه می دهد تا بدون نیاز به سیستم خاص بر روی اکثر سیستم ها روان اجرا شود.
- وب سروری متن باز است.
- تامکت نیز رایگان است.
با توجه به تمام مشخصات و مزایای فهرست شده در مورد هر یک از وب سرورهای مورد اشاره در بحث مقایسه وب سرورهای لینوکسی باید اذعان داشت که امکانات قابل ارائه توسط یک وب سرور، پشتیبانی و هزینهی آن از عوامل تعیین کننده برای انتخاب یک وب سرور مناسب هستند. به عنوان مثال برای شروع فعالیت بهتر است از وب سرور آپاچی استفاده شود و چنانچه میزان عملکرد یک وب سرور مدنظر است انجین ایکس میتواند بهترین گزینه باشد.
در طی آزمایشی بر روی 100 سرور، تست سرعت و پاسخ دهی از سه رقیب اصلی یعنی آپاچی، انجین ایکس و لایت اسپید گرفته شد، که نتیجه ی زیر حاصل شد.

