Nginx چیست؟

Nginx چیست؟

بارگذاری سریعتر صفحات و وبسایت با استفاده از وب سرویس NGINX

حرکتی بلند پروازانه با سرورهای داکر و کوبرنتیز میزبان پایتخت

Nginx در واقع وب سروری با منبع باز، کارآمد و رایگان می‌باشد. ایده و گسترش آن در سال ۲۰۰۰ و توسط شخصی روس با نام Igor Sysoev صورت گرفت و در سال ۲۰۰۴ برای نخستین بار در سطح عموم منتشر گردید و هم اکنون در حدود ۱۲٬۱۸٪ (۲۲٬۲ میلیون وب‌سایت) از تمامی دامنه‌های فعال را میزبانی می‌نماید.
از موارد مفید این سرور می‌توان کمترین حد استفاده از حافظه و همچنین کارایی همزمان و بالای آن را نام برد.
این وب‌سرور به صورت متن باز، با کارایی بالا HTTP و پروکسی معکوس و با عنوان پروکسی سرور IMAP/POP3 می‌باشد.

از دلایل به نام بودن Nginx می‌توان عملکرد بالای آن، پایدار بودن، دارا بودن ویژگی‌های سرشار و مفید و در آخر استفاده پایین از منابع را نام برد.
در رابطه با وب سرور آپاچی یکی از مشکلات بارز، محدود بودن کانکشن‌ها هم زمان ۱۰٬۰۰۰ عددی می‌باشد و اینکه مصرف حافظه بسیار زیاد میباشد.
وب‌سرور Nginx این مشکل را حل نموده است و انتشار آن بر مبنی لایسنس BSD می‌باشد. علاوه بر این فایل‌های استاتیکی را نیز مورد پشتیبانی قرار می‌دهد.

مزایای Nginx

سرور Nginx از معدود وب‌سرور‌هایی است که به منظور مقابله با C10K طراحی گردیده است.
Nginx برای رسیدگی نمودن به درخواست‌ها به موضوع خاصی وابستگی ندارد و این امر درست متضاد با وب‌سرورهای سنتی می‌باشد و بجای آن از معماری روادید محوری دارای مقیاس و غیر همزمان بهره می‌برد.
این ساختار از مقادیر کوچکتر و در عین حال مهم‌تر قابل پیش‌بینی که داخل حافظه بارگذاری موجود است بهره می‌برد.
زمانی که انتظار رسیدگی به هزاران درخواست را به صورت هم‌زمان ندارید، قادر خواهید بود از کارایی‌های زیاد و حافظه‌های کوچک footprint این وب‌سرور بهره ببرید.
مقیاس‌های Nginx در تمامی موارد از کوچکترین VPS تا خوشه‌های سرورها می‌باشد.

  • عمکردی و مقیاس پذیر بودن: به خدمت در آمدن هر سرور برای هزاران کاربر و همچنین تعداد زیادی درخواست در هر ثانیه همراه با بهترین کلاس برای میزبانی های مجازی.
  • قابلیت‌ها: داشتن امنیت برای آینده، IPv6 پروکسی معکوس آماده شده به همراه “load balancing”، دارای نرم‌افزارهای یافتن مسیر، شتاب بسیار زیاد در رابطه با محتوا و ذخیره سازی. راه حلی مناسب برای جایگزینی سخت افزار “ADC” و ارائه مناسب ترافیک به کاربران برای برنامه‌ها
  • آینده نگری: عملکرد به همراه پیش بینی، بدون خوشه (می‌توان آن را به طور موثری روی چیپ‌های با قدرت کم و یا ماشین‌های مجازی با RAM محدود اجرا نمود) و همچنین توسط عملیاتی خاص و کاهش دادن هزینه زیر ساخت‌ها مسائل غیر منتظره را مدیریت می‌نماید.
  • کارایی آسان: قابل انعطاف، همراه با منطق، راه‌اندازی مقیاس پذیر و بسیار آسان (خط‌های دستورات را قدرت می‌بخشد تا به “load balancing” و یا تحویل محتوا به صورت استاتیک برسند.)
  • مجازی سازی: طراحی شده جهت بهینه نمودن مصرف حافظه و CPU، کارایی بسیار بالا در محیط‌های ابری خصوصی و عمومی، با پرداختی کمتر دریافتی بیشتر خواهید داشت.
  • اتوماسیون: دارای ابزاری بسیار راحت و اتوماتیک، قادر به مدیریت شدن توسط تیم توسعه جداگانه، مهندسی متمرکز از تعمیر و نگهداری تا بروز رسانی.

“NGINX” وب سرویسی کامل، سریع و متعادل کننده مبنی بر “HTTP” و به شرح زیر می‌باشد.

پروتکل‌ها و نحوه عملکردی:

  • “HTTP/1.1” , “HTTPS” , “SPDY” و “WebSocket”
  • “IMAP” , “POP3” , “SMTP ” همراه با “HTTP ” خارجی و پایه ریزی شده بر احراز هویت
  • “IPv4 ” و “IPv6”
  • امکان 1 میلیون اتصال به طور هم زمان
  • 10000+ سرورهای مجازی چند کاربره
  • اتصال چندگانه برای ارتباطات با تاخیری اندک
  • دارای 7 لایه کامل پروکسی معکوس
  • “HTTP” , “HTTPS” , “FastCGI” , “SCGI” , “uwsgi” و “memcached”
  • “URL/URI” مبتنی بر درخواستای یافتن مسیر
  • پروکسی معکوس و “load balancer” همراه با “round-robin”، حداقل اتصالات و “IP” مختلط
  • جلسات پایدار
  • برنامه مانیتوریگ پنل مدیریت همراه با تراکنش‌های مصنوعی و شروعی آهسته
  • سرویس فعال و آماده برای راه اندازی(“NGINX AMI” و مستقل)
  • ارتقا آنلاین و دو دویی به منظور برطرف سازی مشکل
  • راه‌اندازی مجدد بسیار خوب و بدون ایجاد توقف در امر پردازش داده
  • پهنای باند، اتصال و ارسال درخواست پلیس
  • جاساز نمودن پروتکل و سیستم فیلترینگ درخواست‌ها
  • اعمال نفوذ در سربرگ
  • “TLSv1.1/TLSv1.2/SSL/SNI/PFS/PCI-DSS”
  • “OCSP Stapling”
  • امکان نظارت داشتن بر نحوه فعالیت
  • تصمیمات پیکربندی “Geo-IP”
  • امکان وارد شدن به “syslog”
  • “HTTP” اصلی: پیکربندی پایه‌ای “HTTP”
  • “Index” اتوماتیک: بوجود آوردن لیست‌های دایرکتوری
  • “Index”:تعیین فایلهای “Index” که در فهرست درخواست‌ها مورد استفاده قرار می‌گیرد
  • “Gzip”:”Gzip” فشرده‌سازی پاسخ‌های “HTTP “
  • عنوانها: افزودن عنوان‌ها به پاسخ‌های “HTTP “
  • “GIF” خالی: تولید نمودن پاسخ‌های خالی تصویری
  • “SSI”: صورت دادن سرور جانبی شامل پردازش
  • “User ID”: افزودن فوق‌العاده “User ID” کوکی
  • “Gzip” ثابت: ارائه خدمات فایل‌های فشرده شده از روی دیسک
  • “Index” اتفاقی: انتخاب اتفاقی فایلهای “index” برای درخواست‌های دایرکتوری
  • “IP” حقیقی: مشخص نمودت مبدا “IP” برای ترافیک پروکسی
  • تعویض: اصلاح نمودن پاسخ‌ها توسط جایگزین نمودن متون
  • “WebDAV”: ارائه پشتیبانی “WebDAV” برای مدیریت فایل‌ها
  • درخواست‌های محدود: مشخص کننده مقدار درخواست‌ها از طریق کلید
  • هدایت کننده محدود: اتصال‌های محدود از طریق کلید
  • ورودی سیستم: ورود به بخش تراکنش‌های “HTTP”
  • جلسات ورودی: جلسات ورودی “HTTP” (جایگزین تراکنش‌های منفرد)
  • “SysLog”: درخواست برای ورود به “syslog”
  • “Status”: ارائه پیشرفته اطلاعات از وضعیت و تراکنش‌های “NGINX”
Nginx یک وب سرور قدرتمند است که روی بهره وری بالا، همزمانی بالا و همچنین استفاده کمتر از حافظه تمرکز داشت. قابلیت‌های بیشتر NGINX مانند توازن در بارگذاری، cache، کنترل دسترسی و پهنای باند و قابلیت یکپارچه‌سازی موثر با برنامه های کاربردی فراوان است.

NGINX محتوای صفحات وب داینامیک را توسط ابزارهای FastCGI برای اجرا انجام می‌دهد. NGINX رویداد-محور و نامتقارن است اما این در حالی است که وب سرور Apache کاملاً بر پایه Thread ها و چند پردازشی کار می‌کند در وب سروری که ترافیک نسبتاً بالایی وجود دارد، Thread ها منجر به فشار آوردن بر حافظه سرور می‌شوند.

NGINX برای وب سرور بسیار مناسب است چرا که قابلیت‌های کلیدی مورد نیاز برای کنترل همزمانی، پردازش تاخیر، محتوای ایستا، فشرده‌سازی و ذخیره در حافظه نهان، از بین بردن اتصال‌ها و درخواست‌های غیرضروری را ارائه می‌کند. همچنین امکان یکپارچه سازی مستقیم با NoSQL مانند memcached یا Redis را برای بالا بردن کارایی هنگام ارائه سرویس به تعداد زیادی از کاربران همزمان فراهم می‌سازد.

با وب‌سرویس NGINX سرعت بارگذاری وب‌سایت شما برق آسا می‌شود.

میزبان پایتخت و هاست NGINX

میزبان پایتخت از وب‌سرور بسیار قدرتمند و سریع NGINX برای سرویس‌های میزبانی وب، نمایندگی وب و … استفاده می‌کند.

وب سرویس NGINX بسیار سریعتر از وب‌سرویس Apache عمل می‌کند بطوری‌که پردازش‌ها بر روی آن وب‌سرویس سریعتر انجام می‌گیرد و زمان اتلافی برای عملیات کامپایل صفحه کاهش می‌یابد.

وب سایت‌های مطرح و بزرگ دنیا از وب سرویس NGINX استفاده می‌کنند:

Netflix, Hulu, Pinterest, CloudFlare, Airbnb, WordPress.com, GitHub, SoundCloud, Zynga, Eventbrite, Zappos, Media Temple, Heroku, RightScale, Engine Yard, MaxCDN و مواردی دیگر …