انجین ایکس nginx - قسمت اول
nginx بی شک یکی از محبوب ترین وب سرورهای دنیاست. در سال 2002 Igor Sysoev کار بروی nginx شروع کرد و تونست با سرعت خیلی بالایی این وب سرور رو به یکی از محبوب ترین وب سرورهای جهان تبدیل کند. در حال حاضر آپاچی و انجین ایکس در حال پاسخ دادن به 50% از درخواست های وب می باشند.
ویژگی های اصلی که باعث گسترش استفاده از nginx شد رو می توان در دو مورد اصلی خلاصه کرد، مورد اول حجم کم این وب سرور بود که برای خیلی از دیوایسهای میزبان مطلب بسیار مهمی بود، مورد دوم هم قابلیت سرعت بسیار زیاد در پاسخ دادن به محتوای استاتیک بود. ویژگی دوم رو بخاطر داشته باشید چون یک ویژگی تعیین کننده در ادامه بحث می باشد.
انتخاب nginx برای مدیران سیستم براساس همین دو ویژگی اصلی بیشتر در موارد زیر انجام میشه:
1. دسترسی مناسب به منابع محتوایی استاتیک
2. مدیریت و بهبود لود سرویس های توضیع شده
این به این معنا نیست معنا نیست که در بقیه موارد از nginx استفاده نمی شود بلکه استفاده در این موارد در 80% موارد بیش از سایر موارد بوده است.
تیم nginx هم بارها این مورد رو در کنفرانس های دوره ای خود اعلام کرده اند که تمرکز ما بیشتر بر "nginx به عنوان یک سرویس دهنده وب و بعد قابلیت های پروکسی آن" بوده است.
"پروکسی ؟ " بله nginx دارای قابلیت های متعددی است که می توان از آن به عنوان پروکسی یا واسط برگردان استفاده نمود.
با استفاده از این قابلیت شما می توانید سرویس دهنده اصلی که اپلیکیشن اصلی روی آن قرار دارد را در پشت nginx پنهان کنید این ویژگی بسیار برای بهبود لود سرور میزبان شما مفید خواهد بود.به آزمایش زیر دقت کنید.
به نمودار بالایی دقت کنید این نمودارها توسط سرویس Blitz تهیه شده، تعداد کاربر در لحظه از 1 به 500 کاربر همزمان رسیده اما زمان پاسخگویی از 100 میلی ثانیه تجاوز نکرده، در صورتیکه قبل از اضافه شدن nginx مشکلات زیادی برای این پاسخگویی وجود داشته.
nginx در موقع طراحی تونست از تجربیات وب سرور های دیگه مثل آپاچی استفاده کنه تا در مقابل کاربرای همزمان واکنش های بهتری از خودش نشون بده از همون ابتدا یه مجموعه ای از الگوریتم های مدیریت کانکشن رو توی خودش قرار داد این موارد باعث شد که تو حالت معمولی خودش nginx بتونه تا هزاران کانکشن رو مدیریت کنه(الگوریتم هایی با ساختار asynchronous, non-blocking, event-driven ).
nginx پروسس های کاری خودش رو تکثیر می کنه، که این پروسس های کاری یه مکانیزم سریع چرخشی برای شناسایی و انجام رویدادها پیاده سازی می کنن(نفسم برید چقدر سخته ترجمه به فارسی یه روال فنی).
- چهارشنبه, ۱۸ مرداد ۱۳۹۶، ۱۲:۰۹ ب.ظ