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.
JVM Parametreleri: Tüm tier’larda otomatik bellek profili sistemi önerilir (JAVA_OPTS eklemeye gerek yoktur). Profil detayları ve manuel GC yapılandırması için JVM Garbage Collector Ayarlama sayfasına bakın.
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 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.
RestApi Politikası, Script Politikası, loglama ve trafik aynalama gibi asenkron işlemler bu ayrı thread pool’u kullanır.
Parametre
Varsayılan
Açıklama
tuneAsyncExecutorCorePoolSize
tuneWorkerThreads ile aynı
Pool’da canlı tutulan minimum thread sayısı
tuneAsyncExecutorMaxPoolSize
tuneWorkerMaxThreads ile aynı
Oluşturulabilecek maksimum thread sayısı
tuneAsyncExecutorQueueCapacity
tuneMaxQueueSize > 0 ise bu değer, aksi halde 1000
Thread’ler dolduğunda kuyrukta bekleyebilecek maksimum görev sayısı
Thread Pool Boyutlandırma Uyarısı:Asenkron executor thread pool’u, ana worker thread pool’undan bağımsızdır. Toplam thread sayısının (worker + async executor) sisteminizin kapasitesini aşmadığından emin olun. Thread sayılarını belirlerken CPU core sayısı ve kullanılabilir belleği göz önünde bulundurun.
tuneStreamingReadTimeout: SSE, Server-Sent Events, LLM streaming gibi uzun ömürlü bağlantılarda normal tuneReadTimeout yetersiz 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.
Tier bazlı performans karşılaştırmaları ve detaylı benchmark sonuçları için Kapasite Planlama sayfasına bakın.
Benchmark sonuçları ideal koşullarda (hızlı backend, minimal network gecikmesi, sade politika zinciri) ölçülmüştür. Production ortamları için mutlaka kendi trafik desenlerinize göre yük testleri yapın.