API Gateway — müşteriler ile iç mikro hizmetler arasında aracılık eden bir servistir. Çağrıları toplar, yönlendirme, yetkilendirme yönetir, güvenlik ve sınırlama politikalarını uygular ve ayrıca istekleri dönüştürüp yönlendirir.
API Gateway, hizmetlerin iç yapısını dış dünyadan gizlemek ve etkileşimi tek bir standartta birleştirmek için gereklidir. Bu, bağlılığı azaltmaya, ön yüzlerin geliştirilmesini hızlandırmaya ve erişim ile günlük kaydı üzerinde merkezi kontrol sağlamaya yardımcı olur.
Nginx'in en basit API Gateway olarak yapılandırılmasına bir örnek:
server { listen 80; location /user/ { proxy_pass http://localhost:8081/; } location /order/ { proxy_pass http://localhost:8082/; } }
Ana özellikler:
Bir hizmet, API Gateway'ı atlayarak başka birine ulaşabilir mi?
İç hizmetler, özel senaryolar için doğrudan çağrılar kullanabilir, ancak harici müşteriler için API Gateway, erişim sağlamak için ana yöntemdir.
API Gateway Tek Nokta Arızası mıdır?
Evet, kümeleme ve yük dengeleme ayarlanmıyorsa. Birden fazla örneğin çalıştırılması ve yük dengeleyici kullanılması önemlidir.
API Gateway yanıtları önbelleğe alabilir mi?
Evet, gelişmiş gateway'ler GET isteklerini önbelleğe alabilir, bu da hizmetler üzerindeki yükü azaltır ve veri çıkışını hızlandırır. Kong'da önbellek ayarı örneği:
plugins: - name: proxy-cache config: strategy: memory content_type: [application/json] cache_ttl: 300