Tüm lokasyonlar aktif · %99.99 uptime
Protokoller

Proxy'de Keep-Alive ve Bağlantı Havuzu

Proxy performansını iyileştirmek için yapılabilecek tek en etkili değişiklik, daha hızlı bir proxy satın almak değil; mevcut bağlantıyı yeniden kullanmaktır. Her istek için yeni bağlantı açan bir istemci, bağlantı kurulum maliyetini sürekli öder ve bu maliyet proxy üzerinden geçerken katlanır.

Bağlantı Kurulumunun Gerçek Maliyeti

ŞEKİLProxy üzerinden ilk bağlantının aşamaları
KURULUM01DNSçözümleme~20 msProxy adresiiçin02TCP el sıkışma~35 msİstemci ↔ proxy03Proxy kimlik~35 ms407 → yenidengönderim04CONNECTtüneli~35 msTünel açılışı05TLS el sıkışma~70 msİstemci ↔ hedef06İlk istekdeğişkenAsıl veritoplam ~200 ms sabit maliyet

Bu 200 ms, her yeni bağlantıda yeniden ödenir. 1.000 istek atıyorsanız ve her seferinde yeni bağlantı açıyorsanız, yalnızca kurulum için 200 saniye harcarsınız.

Keep-Alive Nasıl Çalışır?

HTTP/1.1'de bağlantılar varsayılan olarak kalıcıdır: yanıt geldikten sonra bağlantı kapanmaz, sonraki istek aynı soket üzerinden gönderilir. Bu davranışı bozan üç şey vardır:

  • Sunucu Connection: close gönderir — bağlantı kapatılır.
  • İstemci her istekte yeni oturum nesnesi oluşturur — havuz hiç çalışmaz.
  • Boşta kalma süresi aşılır — proxy veya sunucu bağlantıyı düşürür.
En yaygın hata

Kodda her istek için yeni bir Session, Client veya Agent nesnesi oluşturmak. Bu, havuz yapılandırmanız ne olursa olsun bağlantı yeniden kullanımını tamamen devre dışı bırakır.

Doğru Yapılandırma

ŞEKİLBağlantıyı yeniden kullanma
Dil bazında havuz yapılandırması01# Python requests — Session bir kez oluşturulur02import requests03session = requests.Session()04session.proxies = {"https": "http://kullanici:sifre@proxy.example.com:8080"}05adapter = requests.adapters.HTTPAdapter(pool_connections=16, pool_maxsize=16)06session.mount("https://", adapter)07for url in urls:08 r = session.get(url, timeout=25) # aynı bağlantı yeniden kullanılır0910# Python httpx — limitleri açıkça verin11import httpx12limits = httpx.Limits(max_connections=16, max_keepalive_connections=16,13 keepalive_expiry=60.0)14client = httpx.Client(limits=limits, proxy=PROXY, timeout=25.0)1516# Node.js undici17import { Agent, setGlobalDispatcher } from "undici";18setGlobalDispatcher(new Agent({ connections: 16, keepAliveTimeout: 60_000 }));

Havuz boyutunu sağlayıcınızın eşzamanlılık limitinin hemen altında tutun. Aşarsanız fazladan bağlantılar kurulup hemen kapatılır.

Kazanç Ne Kadar?

ŞEKİL1.000 istek için toplam süre
ÖLÇÜM061122183244Havuzsuz (yeni bağlantı)Havuzlu (keep-alive)1002505007501000

Örnek ölçümde havuz kullanımı toplam süreyi yaklaşık üçte bire indiriyor. Kazanç, proxy'ye olan gecikme arttıkça büyür.

TLS Oturum Yeniden Kullanımı

Bağlantı havuzunun yanında ikinci bir kazanç kaynağı daha var: TLS oturum bileti. Aynı hedefe yeniden bağlanırken tam el sıkışma yerine kısaltılmış bir el sıkışma yapılabilir. Çoğu modern istemci bunu otomatik yapar; önemli olan istemci nesnesini yeniden kullanmaktır.

ŞEKİLTam ve kısaltılmış TLS el sıkışması
TLSTam el sıkışmaOturum yeniden kullanımıTur sayısı2 RTT1 RTTSertifika aktarımıVarYokAnahtar hesaplamaTamKısaltılmışTipik süre70–140 ms30–60 msKoşulİlk bağlantıAynı istemci nesnesi

İstemci nesnesini her istekte yeniden oluşturursanız oturum bileti kaybolur ve her seferinde tam el sıkışma yapılır.

Boşta Kalma Süresi Dengesi

Bağlantıyı çok uzun açık tutmak da sorun çıkarabilir: proxy veya hedef sunucu sessizce bağlantıyı düşürebilir ve istemciniz bunu ancak bir sonraki istekte fark eder. Bu, "ilk istek başarısız, ikincisi başarılı" desenine yol açar.

AyarÖnerilenNeden
keepalive_expiry30–60 snSunucu zaman aşımından kısa olmalı
Havuz boyutuEşzamanlılık limitinin altındaFazlası boşa el sıkışma
Yeniden deneme1 kezDüşmüş bağlantıyı telafi eder
Bağlantı ömrü sınırı5–10 dkUzun ömürlü bağlantılar bayatlar
Pratik öneri

Boşta kalma süresini sunucunun zaman aşımından kısa tutun. Böylece bağlantıyı siz kapatırsınız ve "sunucu kapattı ama ben bilmiyorum" durumu oluşmaz.

Rotasyon ile Çelişki

Bağlantı yeniden kullanımı ile IP rotasyonu doğal olarak çelişir: aynı bağlantıyı kullanmak aynı çıkış IP'sinde kalmak demektir. Bu bir sorun değil, bir tercih meselesidir:

ŞEKİLHavuz mu rotasyon mu?
KARARAynı IP'de kalmak sorun mu?Hayır, oturum gerekiyorEVETHavuzu maksimuma ayar…HAYIRAşağı bakınHız kazancı en yüksekKısmen — bir süre aynı IP olabilirEVETHavuz + periyodik yen…HAYIRAşağı bakınDenge noktasıEvet, her istekte farklı IP şartEVETHavuzu kapatınHAYIRHız maliyetini kabul ed…

Çoğu senaryoda ikinci seçenek doğrudur: bağlantıyı bir süre (örneğin 30 istek veya 5 dakika) yeniden kullanın, sonra yenileyin.

Rotasyon stratejileri için rotasyon ayarları yazımıza bakabilirsiniz.

Özet

Keep-alive ve bağlantı havuzu, proxy performansındaki en büyük tek kaldıraçtır. İstemci nesnesini bir kez oluşturup yeniden kullanın, havuz boyutunu sağlayıcı limitinin altında tutun, boşta kalma süresini sunucunun zaman aşımından kısa ayarlayın ve tek bir yeniden deneme ekleyin. Rotasyon ihtiyacı varsa havuzu kapatmak yerine periyodik yenileme tercih edin. Ölçüm için ping testi ve proxy kontrol araçlarımızı kullanabilirsiniz.

Sıkça Sorulan Sorular

01Keep-alive proxy üzerinde çalışır mı?

Evet. CONNECT tüneli kurulduktan sonra aynı tünel üzerinden birden çok istek geçirebilirsiniz. Düz HTTP proxy'de de kalıcı bağlantı desteklenir.

02Havuz boyutunu nasıl seçmeliyim?

Sağlayıcınızın eşzamanlılık limitinin hemen altında tutun. Aşarsanız fazladan bağlantılar kurulup hemen kapatılır ve el sıkışma maliyeti boşa gider.

03İlk istek başarısız oluyor, sonrakiler çalışıyor — neden?

Havuzdaki bağlantı sunucu tarafından sessizce kapatılmış olabilir. Boşta kalma süresini sunucunun zaman aşımından kısa tutun ve tek bir yeniden deneme ekleyin.

04Bağlantı havuzu IP rotasyonunu engeller mi?

Evet, aynı bağlantı aynı çıkış IP'sinde kalır. Rotasyon gerekiyorsa havuzu tamamen kapatmak yerine belirli sayıda istekten veya süreden sonra bağlantıyı yenileyin.

05TLS oturum yeniden kullanımı ne kazandırır?

Tam el sıkışma yerine kısaltılmış el sıkışma yapılır; tipik olarak bir tur ve 40–80 ms tasarruf sağlar. İstemci nesnesini yeniden kullanmanız yeterlidir.

İlgili Yazılar ve Sayfalar

SONRAKİ ADIM

Proxy altyapınızı bugün güçlendirin.

Ücretli paketlerle dakikalar içinde başlayın veya önce ücretsiz proxy listemizi deneyin.

FREEPROXY.TR

Ücretsiz proxy arıyorsanız doğru yerdesiniz

Güncel ücretsiz proxy adreslerini görüntüleyebileceğiniz, HTTP ve SOCKS proxy türlerini karşılaştırabileceğiniz ve proxy bağlantılarınızı ücretsiz araçlarla kontrol edebileceğiniz kapsamlı bir proxy platformu.