API Gateway Pattern Nedir? Avantajları Nelerdir?
Mikroservis mimarisinin uygulandığı büyük ölçekli projeler için mutlaka dikkate alınması gereken bir pattern’dir. Tek bir giriş noktasından belirlenen birden fazla mikroservise erişim sağlanabilir. API Gateway pattern aynı zamanda “Backend For Frontend” (BFF) olarak da bilinmektedir.
API Gateway mikroservisler ve client arasında konumlandırılır ve ters proxy görevi görür. Aynı zamanda Authentication, SSL, Cache gibi bazı konfigürasyonlar yapmanıza olanak sağlar.
Tek Bir API Gateway Yeter mi?
Bir API Gateway birden fazla client tarafından bir çok servise istek atılması için kullanılır bu yüzden projenin ölçeklenmesiyle ve clientların farklı ihtiyaçlarını karşılamak için gateway’e eklemeler yapılmasıyla gateway şişmeye başlayabilir ve monolitik yapıdan bir farkı kalmayabilir. Bu sebeple mümkünse gatewayleri olabildiğince küçük ölçekli tutup birden fazla gateway kullanılabilir.
Örneğin bir websiteniz ve bir mobil uygulamanız var ise ikisi için ayrı gatewayler oluşturarak clientlardan gelebilecek yükü dağıtabilirsiniz.
Avantajları
Peki API Gateway Pattern’in diğer avantajları nelerdir?
- Tüm endpointlerin tek bir noktadan kontrol edilmesini sağlar,
- 3.parti servisler ile iletişimde güvenlik sağlar,
- Endpointler kapsüllenebilir ve clientlardan gelen istekler doğrultusunda kapsüllenen servislere yönlendirme imkanı tanır,
- Client tarafına birden fazla mikroservisten istek dönülmesi gerekiyor tek bir endpoint üzerinden gerekli servislerin tamamına istek atılarak tek bir response dönme imkanı sağlar,
- Authentication ve Authorization imkanı tanır,
- Endpoint özelinde cacheleme ve cache yönetimi sağlar,
- Olası DDOS ataklarına karşılık istek sınırlama,
- IP whitelist,
- Load Balancing
Dezavantajı
En belirgin dezavantajı ise gateway’in herhangi bir sebepten dolayı kesintiye uğraması gateway’den geçen diğer tüm isteklerin de cevapsız kalmasıdır diyebiliriz.
API Gateway Hizmetleri Sunan Şirketler
Farklı şirketlerin sağladığı API Gateway hizmetleri farklı avantajları da beraberinde getirmektedir, doğru API Gateway seçimi yapmak için ihtiyaçları ve maaliyetleri doğru hesaplamak gerekmektedir. API Gateway hizmeti alabileceğiniz popüler şirketlerden bir kaçını aşağıdan bulabilirsiniz:
- Azure API Management,
- Oracle API Platform,
- Ocelot,
- Apigee,
- MuleSoft,
- KrakenD,
- 3scale
Vakit ayırıp okuduğunuz için teşekkür ederim…