آشنایی با کاربرد های NGINX
کاربرد های NGINX بسیار متنوع است. NGINX یک وب سرور متن باز است که کاربریهای متفاوتی دارد. برای مثال از انجیناکس علاوه بر سرویس دهنده وب، به عنوان پروکسی معکوس، سیستم کش و شبکه رسانه ای نیز استفاده میشود. انجیناکس همچنین میتواند به عنوان یک پروکسی سرور برای سرویسهای ایمیل نیز عمل کند.پروژه Nginx در سال 2001 توسط ایگور سیسوف شروع به کار کرد و به مرحله اجرا درآمد. این پروژه برای موتور جستجوی روسی به اسم Rambler طراحی شده بود که Nginx برای این وب سایت در سال سپتامبر 2008 روزانه بیش از ۵۰۰ میلیون درخواست را هندل میکرد.
در مقاله قبل در وب سایت ایران هاستینگ 24 به بررسی تفاوت انجین ایکس و آپاچی پرداختیم. در مقاله حاضر قصد داریم تا به بررسی کاربرد های NGINX بپردازیم. با ما همراه باشید.
کاربرد های NGINX
در دورههای آموزش NGINX به تفاوت و مزیتهای دو وب سرور معروف، اشاره میشود. اما همواره یک چالش برای افراد باقی است. این که چرا به جای آپاچی، از NGINX استفاده کنیم؟ اگرچه تاکنون با مزیتهای این وب سرور آشنا شده اید، اما بار دیگر دلیل انتخاب این وب سرور و کاربرد های NGINX را شرح میدهیم.
کانفیگ ساده
یکی از مهمترین دلایل بهتر بودن انجیناکس، کانفیگ سادهتر آن است. این موضوع بهینهسازی آن را ساده تر میکند. فایل کانفیگ در انجین اکس، شامل بلاکهای متفاوتی نظیر SIMPLE DIRECTIVE و BLOCK DIRECTIVE است که هر بخش کار مخصوص خود را انجام میدهد.
کشینگ
وب سرور انجیناکس از MULTI THREAD و یا PROCESS-ORIENTED استفاده میکند. بنابراین فعالیتهای آن بر اساس منابع موجود کنترل میشود. این یعنی انعطاف پذیری بالاتری نسبت به آپاچی دارد. نکته بعدی این که NGINX از پروسه MASTER که زیرمجموعه آن چندین WORKER و HELPER پروسهها هستند، بهره گرفته است. هر WORKER پروسه بهطور همزمان میتواند چندین هزار درخواست را پاسخ دهد.
همین مورد موجب میشود تا پاسخ انجین اکس به درخواست کاربران (حتی اگر میلیونها درخواست لحظه ای باشد) بهتر باشد. گفتیم که این وب سرور، به عنوان پراکسی معکوس، سیستم کش نیز مورد استفاده قرار میگیرد و برعکس آپاچی نیاز به نصب کش جداگانه ندارد.
عملکرد خوب به عنوان FRONTEND PROXY
از دیگر تفاوتهای مهم NGINX و آپاچی در پروکسی است. انجیناکس به طور کلی عملکردی عالی در پروکسی سرور دارد. عملکرد پروکسی به این صورت است که درخواست کاربر به صورت HTTP دریافت شده و از طریق پروکسی و پروتکلهای متفاوت به سرورهای بالاتر، ارجاع میشود. سپس پاسخ برای کاربر ارسال میشود.
پاسخگویی بهتر به درخواستهای استاتیک
فایلهای CSS,JAVASCRIPT و عکسها در واقع محتوای استاتیک هستند. منظور از استاتیک این است که در هر بار لود، محتوا بدون هیچ تغییری بارگذاری میشود. وب سرور انجین اکس و NODEJS به طورکلی سازگاری بهتری با این محتواها دارند. اگر یک وب سایت، محتوای داینامیک نیز داشته باشد، انجین اکس، این محتوا را به وب سرور دوم ارجاع میدهد و در نتیجه قدرت پاسخ دهی به شدت افزایش مییابد.
لود بالانسینگ
لود بالانسینگ یکی از کاربردهای ویژه وب سرور انجیناکس است. این قابلیت، با پخش ترافیک روی سرورهای دیگر، خصوصاً در ساعات پر ترافیک، موجب افزایش سرعت و بهره وری سرور میشود. با نصب انجین اکس روی سرور اختصاصی، از جمله سرور اختصاصی ایران میتوان از این قابلیت NGINX بهره برد.
معایب وب سرور انجیناکس
بعد از آشنایی با کاربرد های NGINX بهتر است با معایب این وب سرور نیز آشنا شویم. اگرچه گفتیم که این وب سرور با بیشتر سیستم عاملها سازگار است. اما با این حال به نظر میرسد که مهمترین عیب انجین اکس این است که با سیستم عامل ویندوز، همچون لینوکس، سازگار نیست. به عبارت دیگر عملکرد آن در لینوکس به مراتب بهتر است. همچنین وب سرور انجیناکس، ماژولهای کمتری نسبت به رقیب خود دارد.