Keep Alive nedir, nasıl etkinleştirilir?
December 2022 (0) Iptv 11/21/2024
Keep Alive ne demek, nasıl etkinleştirilir?
Giriş
Keep-Alive nedir? Nasıl çalışır?
Keep-alive aynı TCP bağlantısıyla dosyaları göndererek hızı artırmak için kullanılır. Bu rehberde keep-alive’ı etkinleştirmek için 4 farklı yöntem öğreneceksiniz. Keep-Alive, bir ziyaretçinin tarayıcısının, her dosya için farklı isteklerde bulunmak yerine, kalıcı bir TCP bağlantısı üzerinden tüm içeriği (JavaScript, CSS, resimler, videolar vb.) indirmesine olanak tanır. Ziyaretçinizin tarayıcısı her şeyi tek bir kalıcı HTTP bağlantısı yoluyla alabileceğinden, bu, bir hız ve performans artışı sağlayacaktır. Kısacası Keep-Alive, bir web sunucusuyla tarayıcı arasındaki iletişim kalıbı olup, istek miktarını önemli ölçüde azaltma ve bir web sayfasını hızlandırma olanağı sağlar. Keep-Alive’ın farkını ve faydalarını anlamaya yardımcı olacak bir resim:
Keep-Alive’ın avantajları
- Keep-Alive’ıb, daha az HTTP isteği yapmasından ötürü CPU ve bellek kullanımı azalmış olur. Bu, tüm hosting kullanıcılarına (ücretsiz hosting, paylaşımlı hosting, VPS) fayda sağlayacaktır.
- Keep-Alive özelliği, HTTP hat bağlantısı sağlar. (İsteklerin aynı TCP bağlantısı üzerinden iletilmesini sağlar.)
- HTTPS istekleri daha fazla CPU zamanı ve kaynağı gerektirir. HTTPS ve SSL kullanıyorsanız, Keep-Alive web sitenize büyük fayda sağlayacaktır.
- Gecikme azalır ve yükleme hızı, performansında genel artış sağlanır.
- Keep-Alive tüm modern tarayıcılar tarafından desteklenir.
- Keep-Alive’ı etkinleştirmek, web sitenize daha iyi site performansından dolayı SEO ve sıralama açısından da yarar sağlayacaktır.
Kısacası, Keep-Alive, web sitenizin hızını aynı anda artırırken, kaynak kullanımınızı azaltmanın mükemmel bir yoludur.
Nelere ihtiyacınız olacak?
Bu rehbere başlamadan önce aşağıdakilere ihtiyacınız var:
- .htaccess’e erişim
- httpd.conf’a erişim (tercihi)
- HttpCoreModule’a erişim (tercihi)
Adım 1 — Sitenizi analiz etmek
Öncelikle, Keep-Alive’in sunucunuzda etkin olup olmadığını kontrol etmek için GTMetrix gibi bir araçla bir web sitesini analiz etmelisiniz. Bir test sitesinin analizinden sonra elde edilen sonuçlar:
Bazı sunucularda veya barındırma sağlayıcılarında Keep-Alive varsayılan olarak etkindir. Analiziniz %100 puanını verirse, yapılması gereken başka bir işlem yoktur.
Adım 2 — Keep-Alive’ı etkinleştirmek
Keep-Alive’ı etkinleştirmenin birkaç yolu vardır ve hepsi sunucunuza veya hosting sağlayıcınıza bağlıdır. İşte birkaç seçenek:
Seçenek 1 — .htaccess dosyasını düzenlemek
Keep-Alive özelliğini etkinleştirmek için aşağıdaki kodu .htaccess
dosyanıza eklemeniz yeterlidir. .htaccess
kullanarak Keep-Alive özelliğini etkinleştirmek sunucu ayarlarını geçersiz kılacak ve kalıcı bağlantıyı etkinleştirilecektir.
<ifModule mod_headers.c> Header set Connection keep-alive </ifModule>
Bu yöntem çoğu Linux paylaşımlı hosting sağlayıcıları üzerinde çalışmalıdır. .htaccess
dosyasını nerede bulacağınızı bilmiyorsanız, bu rehbere göz atın.
Seçenek 2 — httpd.conf dosyasını düzenlemek
Apache yapılandırma dosyasına erişebiliyorsanız, buradan uzantıyı etkinleştirebilirsiniz. Yapılandırma şu şekilde görünmelidir:
# # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive On # # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. # MaxKeepAliveRequests 50 # # KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. # KeepAliveTimeout 10
- KeepAlive On kısmı uzantıyı etkinleştirir.
- MaxKeepAliveRequests kısmı, tek bir bağlantı için izin verilen maksimum istek sayısını belirler. Tek bir bağlantı için 50 istek başlangıç için iyidir.
- KeepAliveTimeout kısmı, sunucunun bir istemciden gelen yeni istekleri ne kadar bekleyeceğini belirtir. 5 veya 10 saniye gibi daha küçük bir değerle başlamanız ve gerekirse daha sonra artırmanız önerilir. Bu değeri çok yüksek ayarlamanız, yüksek sunucu yüküne neden olabilir.
httpd.conf dosyasını bulamazsanız, komut satırında aşağıdaki komutu çalıştırın:
find / -name httpd.conf
Seçenek 3 — NGINX’de Keep-Alive’ı etkinleştirmek
Keep-Alive, NGINX’te varsayılan olarak etkindir, ancak bazı durumlarda devre dışı bırakılabilir. HttpCoreModule kullanarak etkinleştirebilirsiniz. keepalive_disable
değerini arayın; bu, birçok durumda Keep-Alive’ın nçalışmama sebebidir. Etkinleştirmeden, herhangi bir değişiklik yapmadan önce devre dışı bırakılmış olmasının sebebini öğrenin.
Seçenek 4 — Windows Server (IIS)
Windows tabanlı bir sunucu kullanıyorsanız, Keep-Alive uzantısını komut satırını kullanarak kolayca etkinleştirebilirsiniz.
Aşağıdaki komut etkinleştirecektir:
appcmd set config /section:httpProtocol /allowKeepAlive:true
Eğer devre dışı bırakmak isterseniz:
appcmd set config /section:httpProtocol /allowKeepAlive:false
Birkaç ekstra seçenek için Microsoft’un resmi rehberine de göz atabilirsiniz.
Adım 3 — Değişiklikleri test etmek
Keep-Alive tamamen etkinleştirildikten sonra, her şeyin hazır olup olmadığını görmek için GTMetrix veya herhangi bir web sitesi performans analizi aracıyla başka bir tarama yapın. Keep-Alive etkinleştirikdikten sonraki sonuçlar:
curl yüklemek için
If you have Chocolatey installed:
-
Click on the Search bar and type PowerShell.
-
Right-click on the PowerShell application and click "Run as administrator"
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install curl -y
choco
HTTP header’larını kontrol ederek Keep-Alive’ın etkin olup olmadığını kontrol etmek de mümkündür. Bu, terminal üzerinden aşağıdaki komutu kullanarak yapılabilir:
curl -I http://example.com/example.php
Bir örnek:
curl -i http://ralfisoft.com/
Sonuçlar:
HTTP/1.1 301 Moved Permanently Connection: keep-alive Server: nginx Date: Fri, 23 Dec 2016 18:58:14 GMT Content-Type: text/html Content-Length: 178 Location: curl -i http://ralfisoft.com/
Connection: keep-alive
kısmı etkin olduğunu gösterir.