Keep-Alive چیست؟
در حالت پیشفرض در ارتباطات مبتنی بر TCP، هر کانکشنی پس از اتمام بسته میشود و برای ارتباط دوباره میبایست مجدداً باز گردد. از Keep-Alive برای برقراری چند ارتباط و نگه داشتن آن میتوان استفاده کرد.
در صورت عدم استفاده از Keep-Alive ارتباط Http مجبور است مراحل زیر را طی کند:
- کلاینت مجبور است برای ایجاد ارتباط با سرور یک کانکشن جدید بسازد.
- کلاینت یک فایل با فرمت html درخواست میکند و پس از تحویل گرفتن آن ارتباط را قطع میکند.
- مرورگر فایل html را میخواند و بررسی میکند که آیا فایل دیگری برای نمایش وجود دارد یا خیر.
- پس از تحلیل فایل و در صورت نیاز به فایلهای دیگر، یک درخواست جدید اتصال برای هر یک از فایلها میکند.
وقتی تعداد ارتباطها بسیار زیاد باشد و سرور مدام درگیر ایجاد و خاتمهدادن به کانکشنها باشد، در نتیجه سربار زیادی ایجاد میشود که باعث از دست رفتن و تلف شدن زمان میشود. ما میتوانیم با فعال کردن Keep-Alive بر این مشکل غلبه کنیم و همهی این فایلها را در یک اتصال ارسال و از باز کردن و بستن مکرر اتصال جلوگیری کنیم.
چگونه Keep-Alive را فعال کنیم؟
اگر به تنظیمات فایلها در وب سرور برای فعال کردن Keep_Alive دسترسی ندارید، میتوانید با اضافه کردن کد زیر در Http header توسط htaccess. آن را فعال کنید.
Header set Connection keep-alive