وب سرویس های لینوکس چگونه کار میکنند؟
APACHE و NGINX دو وب سرویس
لینوکسی هستند که میتوان از هر کدام به
طور مستقل از دیگری یا به طور ترکیبی برای عملکرد بهتر استفاده کرد بسته به
نوع سایت هر کدام از مدل های زیر میتواند برای بهبودPERFORMANCE مورد استفاده قرار گیرد
وب سرویس پیش فرض APACHE میباشد. در سناریو اول که بسیار
رایج میباشد برای افزایش عملکرد از ترکیب هر دو وب سرویس در کنار هم استفاده میشود
NGINX در این سناریو نقش PROXY سرور را دارد که برای نمایش محتوا استاتیک و LOCATE کردن فایل های
درخواستی کاربر استفاده میشود. وقتی یوزر request خود را روی پورت ۸۰ یا ۴۴۳ ارسال میکند این
پروسه اغاز میگردد . NGINX درخواست کاربر را روی پورت ۷۰۸۰/۷۰۸۱ به APACHE ارسال میکند سپس اپاچی RERITW RULE هارا اعمال
کرده و مسیر فایل هایی مثل عکس و فایل های HTML را به NGIN X ارسال میکند تا
ngnix ان هارا LOCATE کرده و به کاربر ارسال کند
سپس برای بخشی از request که محتوا DYNAMIC مثل کد های PHP دارد شروع به
فراخوانی DYNAMIC CONTENT HANDLER ها مثل FAST CGI-PHP میکند و
سپس پاسخ انهارا برای نمایش به کاربر به NGIN X ارسال میکند
در سناریو دوم میتوان فقط از NGINX به عنوان وب
سروی استفاده کرد. لازم به ذکر در این سناریو به APACHEبرای هندل کردن request های وبمیل به
ان نیاز است
کاربر درخواست خود را بر پورت ۸۰ یا ۴۴۳ ارسال میکند و NGINX محتوا استاتیک
مثل فایل عکس را LOCATE کرده و ارسال میکند. سپس
برای پاسخ به محتوا DYNAMIC شروع به فراخوانی PHP-FPM میکند
اگر request برای سروبی وبمیل وجود
داشت به سمت APACHE ارسال میشود
nginx dynamic
content caching و چه زمانی باید استفاده شود
با فعال کردن این قابلیت NGINX
میتواند بخشی از محتوا DYNAMIC را نیز برای مدتی در memory کش کند بدین ترتیب بار پردازشی سرور کمتر شده و پاسخ ها سریع تر
ارسال میشوند اما باید دقت کرد این قابلیت در سایت هایی با مشخصات زیر کاربرد دارد
و در غیر این صورت میتواند باعث ارسال پاسخ
تادرست شود:
·
وب
سایت هایی که تعداد بازدید و لود بسیار بالایی دارند
·
محتوا
داینامیک انها به طور مرتب در حال تغییر است
دقت کنید این کش باید برای پیج های شامل
محتوا customize
شده غیر فعال باشد مثل صفحه بانک و لود اجزایی مثل موقعیت جغرافیایی زیرا محتوا کش
شده غیر PERSONELIZE شده
است