Geleneksel yük dengeleme yaklaşımlarında algoritma seçimi çoğu zaman tek değişkenli bir listeye indirgenir: sırayla dağıt, en az bağlantıya gönder, kaynak adrese göre sabitle veya ağırlık kullan. Bu model normal trafik altında yeterli görünebilir; ancak kampanya, API patlaması, yayın trafiği veya ani kullanıcı yoğunluğu başladığında tek başına karar vermek için zayıf kalır.
Örneğin iki kurum servisi aynı yanıt süresini veriyorsa, sistemin ikinci bir kıyas yapma imkânı yoksa trafik gelişigüzel dağılır. Yanıt süresi düşük görünen ama kuyruğu dolu olan bir servis seçilebilir; bağlantı sayısı az görünen ama hata üretmeye başlamış bir servis hâlâ aday kalabilir.
Bu kararsızlık özellikle uç gecikme değerlerini etkiler. Ortalama yanıt süresi kabul edilebilir görünürken yüksek yüzdelik dilimlerde kullanıcı deneyimi bozulabilir. Güvenlik, erişim kontrolü veya uygulama katmanı kontrollerinin eklediği gecikme de hesaba katılmadığında, hızlı görünen ama fiilen yavaş davranan adaylar öne çıkabilir.
Doğru model, karar anında canlı servis sinyallerini okumalı, sağlıksız veya bakım modundaki adayları otomatik elemelidir. Oturum yapışkanlığı devredeyse mevcut kullanıcı bağını bozmamalı; yalnızca serbest isteklerde en uygun servisi seçmelidir.
Fastest+ Routing'in çözdüğü temel problem budur: yük dengeleme kararını tek bir etikete değil, gerçek zamanlı ve iki aşamalı servis davranışına bağlamak.
TR7, Fastest+ Routing'i canlı sinyal okuma, iki kademeli puanlama, sağlık farkındalığı ve arayüz tabanlı konfigürasyonla ele alır.
Karar mantığı veri düzlemine gömülü çalışır ve her HTTP veya TCP isteğinde canlı servis istatistiklerini okur. Seçilen servis, yönlendirme değişkenine yazılır ve trafik bu karara göre ilerletilir. Operatör özel kod yazmadan istek başına dinamik seçim elde eder.
İlk aşamada birincil sinyalde en iyi değere sahip servisler aday listesine alınır. Eğer birden fazla servis aynı skoru paylaşıyorsa, ikinci aşamada ikincil sinyal devreye girer. Böylece "yanıt süresi aynıysa kuyruğu daha boş olanı seç" gibi pratik kararlar tek algoritma içinde uygulanır.
Bakım modundaki veya sağlık durumu uygun olmayan servisler aday listesine alınmaz. Dinamik oturum yapışkanlığı devredeyse Fastest+ seçimi atlanır ve mevcut oturum bağı korunur. Bu yaklaşım performans optimizasyonu yaparken kullanıcı oturumlarını bozmaz.
Operatör yalnızca birincil ve ikincil karar sinyalini seçer. Sistem gerekli yönlendirme satırlarını konfigürasyon üretim aşamasında otomatik oluşturur. Karmaşık karar mantığı, günlük operasyon için basit bir politika seçimine dönüşür.
Fastest+ Routing, kurum servisleri arasında canlı performans, sağlık ve oturum bağını birlikte değerlendiren gelişmiş yönlendirme yetenekleri sunar.
Birincil karar sinyalinde yeni en iyi değer bulunduğunda aday listesi sıfırlanır; aynı değeri paylaşan servisler listeye eklenir. İkinci aşamada bu adaylar ikincil sinyale göre tekrar daraltılır. Varsayılan yapılandırmada Fastest+, yanıt süresi düşük adaylar arasından anlık oturum yükü daha düşük olan servisi tercih eder. Bu sayede hızlı görünen servisler arasında yükü daha düşük olan tercih edilir.
Operatör Fastest+ için iki karar sinyali seçer: ortalama yanıt süresi, bağlantı kurma süresi, kuyrukta bekleme süresi, anlık oturum yükü, anlık kuyruk yoğunluğu, bağlantı hataları, istemci hata yoğunluğu, sunucu hata yoğunluğu, servis kaynaklı kopmalar veya kullanılan bağlantı kapasitesi. Bu sinyaller sistem içinde ilgili canlı servis sayaçlarına bağlanır; kullanıcı ham metrik isimleriyle uğraşmaz. Böylece trafik yalnızca "hızlı görünen" servise değil, o anda daha sağlıklı, daha boş veya daha az hata üreten kurum servisine yönlendirilebilir.
İkinci kıyasa ihtiyaç olmayan servis havuzlarında tek sinyalli mod kullanılabilir. Bu modda karar yalnızca seçilen birincil sinyalin en iyi değerine göre verilir. Daha basit servis grupları için gereksiz karar derinliği eklenmez. Operatör aynı arayüzden hem tek sinyalli hem de çift sinyalli modu yönetebilir.
Kurum servisi bakım modundaysa veya sağlık durumu uygun değilse aday listesine girmez. Bu davranış algoritmanın içine gömülüdür; ayrıca manuel kural, ek erişim kontrol listesi veya operasyonel müdahale gerektirmez. Planlı bakım, sorunlu servis ayrıştırma ve geçici servis çıkarma işlemleri trafik kararına otomatik yansır. Böylece sistem yalnızca uygun adaylar arasında seçim yapar.
Oturum yapışkanlığı koşulları oluştuğunda Fastest+ seçimi devre dışı kalır. İstek, mevcut yapışkan oturum mantığıyla belirlenen servise yönlendirilir. Üretilen yönlendirme koşulu sistem tarafından şeffaf biçimde konfigüre edilir. Bu sayede performans optimizasyonu kullanıcı oturumu sürekliliğinin önüne geçmez.
Fastest+ hem HTTP isteği aşamasında hem de TCP içerik inceleme aşamasında çalışabilir. TCP servislerinde karar için gerekli inceleme penceresi otomatik oluşturulur. Böylece uygulama katmanı trafiği ile TCP tabanlı servisler aynı yönetim modelinde ele alınır. Operatör servis tipine göre farklı ürün mantıkları öğrenmek zorunda kalmaz.
Dinamik yapışkanlık kullanıldığında Fastest+ yalnızca henüz sabitlenmiş oturumu olmayan istemciler için çalışır. Mevcut oturumlar korunurken yeni veya serbest istekler canlı sinyallere göre dağıtılır. Bu model hem kullanıcı sürekliliği hem de anlık kapasite kullanımı açısından dengeli bir yaklaşım sağlar. Özellikle yoğun ve dalgalı trafik altında servis havuzunun daha verimli kullanılmasına yardımcı olur.
Eğer karar sürecinde uygun kurum servisi bulunamazsa özel yönlendirme kararı boş kalır. Bu durumda varsayılan yük dengeleme davranışı devreye girer. Sistem özel yönlendirme kararı üretemediği durumlarda trafiği boşa düşürmek yerine bilinen varsayılan davranışa geri döner. Bu geri dönüş mantığı operasyonel riskleri azaltır.
Fastest+ Routing, yalnızca algoritma seçimi değil; yüksek erişilebilirlik, görünürlük, yeniden yükleme ve entegrasyon davranışlarıyla birlikte tasarlanmıştır.
Karar mantığı servis başlangıcında yüklenir ve tek sinyalli ile çift sinyalli iki ayrı eylem olarak tanımlanır. Tek sinyalli eylem bir karar girdisiyle, çift sinyalli eylem iki karar girdisiyle çalışır. Eylemler HTTP ve TCP istek aşamalarında kullanılabilir.
Servis istatistikleri bellek içi tablodan okunur; ek soket, dosya okuma veya dış sorgu gerekmez. Karar süreci servis sayısına göre doğrusal tarama yapar. Bu yapı çok sayıda kurum servisi olan havuzlarda bile yönlendirme kararını veri düzlemine yakın tutar.
İki düğümlü yüksek erişilebilirlik kurulumunda her düğüm aynı algoritmayı bağımsız çalıştırır. Canlı sinyaller düğüm yerelinde değerlendirildiği için failover sonrasında yeni aktif düğüm kendi gözlemlediği istatistiklerle karar vermeye devam eder. Harici ortak skor deposuna bağımlılık oluşmaz.
Seçilen kurum servisi yönlendirme değişkeninde tutulur ve log formatına eklenebilir. Bu sayede hangi isteğin hangi servise yönlendirildiği geriye dönük incelenebilir. Operasyon ekipleri trafik kararlarını yalnızca sonuç olarak değil, izlenebilir bir yönlendirme izi olarak görebilir.
Yumuşak yeniden yükleme sırasında karar bağlamı yeniden yüklenir ve algoritma yeni bellek durumu ile başlar. Geçmiş yanıt süresi gözlemi taşınmadığı için ilk isteklerde kararlar mevcut anlık verilere dayanır. Havuz yeniden başlatılmadan konfigürasyon değişikliklerinin uygulanabilmesi operasyonel kesintiyi azaltır.
WAAP katmanı bir isteği bloklayınca Fastest+ çağrılmaz; böylece gereksiz servis seçimi yapılmaz. Fastest+ yalnızca HTTP ve TCP servis havuzlarında geçerlidir. Layer 4 servislerde platformun Layer 4 algoritma seçenekleri kullanılır.
Yoğun satış dönemlerinde çok sayıda kurum servisi aynı anda trafik alır. Fastest+ yanıt süresi ve kuyruk yoğunluğu gibi sinyalleri birlikte değerlendirerek hızlı ama kuyruğu dolu servislerin gereksiz öne çıkmasını engeller. Sonuç daha dengeli servis kullanımı ve daha kontrollü kullanıcı deneyimidir.
Finansal API katmanlarında yalnızca hızlı yanıt yeterli değildir; hata üretme davranışı da kararın parçası olmalıdır. Fastest+ sunucu hata yoğunluğu düşük servisleri öne alabilir, eşitlikte anlık oturum yükünü dikkate alabilir. Bu yapı kritik API trafiğinde daha bilinçli dağıtım sağlar.
Yayın ve medya trafiğinde en az yüklü düğüm her zaman en iyi kullanıcı deneyimini vermez. Fastest+ kullanılan bağlantı kapasitesi ve yanıt süresi kombinasyonuyla hem mevcut bağlantı kullanımını hem de yanıt davranışını birlikte değerlendirir. Böylece kenar servisleri arasında daha hassas trafik paylaşımı yapılır.
Çok kiracılı yapılarda her kiracıya ait servis grubu farklı davranış gösterebilir. Fastest+ servis kaynaklı kopmalar ve bağlantı kurma süresi gibi sinyallerle daha kararlı çalışan servisleri tercih edebilir. Bu yaklaşım kiracı bazlı servis kalitesini daha yönetilebilir hâle getirir.
Canlı sinyallerle iki aşamalı, kod yazmadan yapılandırılan trafik dağıtımı. Kendi servisleriniz üzerinde canlı bir kurulumda gezdirelim.