Ana içeriğe geç

7.1. Gateway#

Tüm istemciler için tek bir hizmet ucu sağlayan uygulamadır. Erişim sağlanacak uygulama bilgilerini registry server üzerinden alarak isteklerin ilgili uygulamaya yönlendirilmesini sağlar. Uygulama parametreleri config server üzerinde özelleştirilebilir.

Yetenekler#

  • Yönlendirme (Routing): Spring Gateway, gelen istekleri belirli hedef servislere yönlendirmenizi sağlar. Bu, bir URL'den gelen isteği bir veya daha fazla hedef servise iletebilmeniz anlamına gelir. Yönlendirme kuralları esnek bir şekilde yapılandırılabilir.
  • Filtreler (Filters): Gateway üzerinden geçen istekleri ve yanıtları işlemek için filtreler kullanabilirsiniz. Özelleştirilmiş filtreler ekleyebilir ve isteği modifiye edebilirsiniz. Örneğin, istekleri kimlik doğrulamak veya güvenlik kontrolleri yapmak için filtreler ekleyebilirsiniz.
  • Yeniden Deneme (Retry): İsteklerin otomatik olarak yeniden denemesini sağlayabilirsiniz. Özellikle hedef servislerdeki geçici hataları ele almak için faydalıdır.
  • Yük Dengeleme (Load Balancing): Birden fazla aynı hedefe sahip olduğunuzda, Spring Gateway otomatik olarak yük dengelemesi yapabilir. Bu, hedef servislere gelen isteklerin dağıtılmasını sağlar.
  • Hedefe Göre Yönlendirme (Routing by Predicate): İstekleri belirli ölçütler veya özellikler (örneğin, isteğin URI'si) temelinde yönlendirebilirsiniz. Bu, dinamik yönlendirme senaryoları için kullanışlıdır.
  • Dinamik Konfigürasyon (Dynamic Configuration): Spring Gateway, çalışma zamanında dinamik olarak yeniden yapılandırılabilir. Bu, yeni yönlendirme kuralları eklemek veya mevcutları güncellemek için gereklidir.
  • Özelleştirilebilirlik (Customization): Spring Gateway, özelleştirilmesi kolaydır. Özelleştirilmiş filtreler, yönlendirme kuralları ve iş mantığı ekleyebilirsiniz.
  • Hız ve Ölçeklenebilirlik (Performance and Scalability): Spring Gateway, yüksek performanslı ve ölçeklenebilir bir şekilde tasarlanmıştır, bu nedenle büyük mikro hizmet uygulamalarını destekler.

İstek Yaşam Döngüsü(Request Lifecycle)#