Genel Bakış
Gateway performansı birçok faktöre bağlıdır:- Donanım kaynakları: CPU core sayısı, bellek miktarı
- Trafik profili: Eşzamanlı istek sayısı, istek boyutu, SSE/streaming kullanımı
- Politika karmaşıklığı: Uygulanan politikaların sayısı ve ağırlığı (örneğin Content Filtering gibi CPU-yoğun politikalar)
- Backend yanıt süresi: Hedef servisin gecikme profili
Tuning yaklaşımı — öncelik sırası:
- Otomatik profil — Çoğu ortam için yeterlidir, müdahale gerekmez
- Tier önerileri — Kaynak boyutuna göre hazır parametre setleri (bu sayfa)
- Manuel ayar — Yük testi sonuçlarına göre ince ayar
Tier Bazlı Önerilen Ayarlar
Aşağıdaki tablolar, farklı donanım profilleri için önerilen Gateway Worker ayarlarını göstermektedir. Bu değerler, üretim öncesi yük testleri ile doğrulanmalıdır.Tier 1 — 2 Core / 2 GB RAM
Düşük trafikli ortamlar, geliştirme ve PoC senaryoları için uygundur.Tier 2 — 4 Core / 4 GB RAM
Orta ölçekli üretim ortamları için önerilir. Çoğu kurulum için dengeli bir başlangıç noktasıdır.Tier 3 — 8 Core / 8 GB RAM
Yüksek trafikli üretim ortamları için önerilir.Thread Tuning
Worker Threads
Worker thread’ler, gelen HTTP isteklerini işleyen temel thread pool’dur.CPU’ya Göre Önerilen Thread Değerleri
Genel kural:
tuneWorkerThreads ≈ CPU × 512, tuneWorkerMaxThreads ≈ CPU × 1024. Bu değerler Undertow’un (Gateway’in kullandığı HTTP sunucusu) thread yönetim modeline dayanır.IO Threads
IO thread’ler, network I/O işlemlerini (socket okuma/yazma) yöneten düşük seviyeli thread’lerdir.IO thread sayısı genellikle CPU core sayısına eşit tutulur. Artırmak çoğu senaryoda fayda sağlamaz; bağlam değiştirme (context switching) maliyetine yol açabilir.
Async Executor Thread Pool
RestApi Politikası, Script Politikası, loglama ve trafik aynalama gibi asenkron işlemler bu ayrı thread pool’u kullanır.Connection Pool Tuning
Routing Connection Pool
Backend servislere yapılan HTTP bağlantılarını yöneten pool’dur. Yüksek eşzamanlı istek hacminde bu değerler kritiktir.
Ne zaman artırılmalı:
- 503 hataları veya connection timeout logları görüldüğünde
- Backend servisler yavaş yanıt verdiğinde ve bağlantılar tükendiğinde
- Eşzamanlı istek sayısı mevcut pool limitlerini aştığında
Cache Connection Pool
Cache servisleriyle yapılan bağlantıları yönetir.API Call Connection Pool
Rest API Politikası ve benzeri politikalar tarafından yapılan harici API çağrılarını yönetir.Timeout Tuning
Timeout Parametrelerinin Birbirleriyle İlişkisi
tuneNoRequestTimeout: Bağlantı açıldı ancak HTTP isteği gönderilmedi — boş bağlantıları temizlertuneReadTimeout: İstek işlenirken istemci veri göndermeyi durdurdu — takılı istekleri temizlertuneStreamingReadTimeout: SSE, Server-Sent Events, LLM streaming gibi uzun ömürlü bağlantılarda normaltuneReadTimeoutyetersiz kalır
SSE/LLM Streaming Senaryoları:Streaming bağlantılarda istemci uzun süre veri göndermediği için normal
tuneReadTimeout bağlantıyı erken kapatabilir. tuneStreamingReadTimeout ile streaming bağlantılarına özel timeout değeri atanır. Varsayılan 0 (sınırsız) değeri çoğu senaryo için uygundur; ancak kaynak sızıntısını önlemek için ortamınıza uygun bir üst limit belirleyebilirsiniz.Benchmark Referans
Tier bazlı performans karşılaştırmaları ve detaylı benchmark sonuçları için Kapasite Planlama sayfasına bakın.İlgili Sayfalar
JVM Garbage Collector Ayarlama
Otomatik bellek profili, GC seçenekleri ve heap yapılandırması
Kapasite Planlama
Donanım boyutlandırma, RAM hesaplama ve benchmark sonuçları
Gateway Runtime'ları
Gateway ortamlarının UI üzerinden yapılandırılması ve parametre referansı
Pod Thread Sayısı Periyodik İzleme
Thread kullanımının zamana göre izlenmesi ve uyarı mekanizmaları

