Ana içeriğe geç

API Gateway

API Gateway Kavramı

Yüksek Performans

Düşük gecikme ve yüksek throughput

Güvenlik

Authentication, Authorization, mTLS

Trafik Yönetimi

Load balancing, rate limiting, failover

Ölçeklenebilirlik

Yatay ölçeklendirme desteği

API Gateway Bileşenleri

İstek Karşılama
  • İstemci isteklerini karşılama
  • TLS/SSL sonlandırması
  • Request parsing ve validation
Policy Enforcement
  • Pre-flow politikaları uygulama
  • Conditional politikaları değerlendirme
  • Post-flow politikaları uygulama
Routing
  • Upstream Target seçimi
  • Load balancing uygulaması
  • Failover mekanizması

Worker Modülleri

Ortam İzolasyonu

Her Worker bir ortama aittir

Yatay Ölçeklendirme

Birden fazla Worker ile ölçeklendirme

Yüksek Erişilebilirlik

Worker'lar arası yük dengeleme

Bağımsız Çalışma

Worker'lar bağımsız çalışır

Local Cache

Konfigürasyon Cache

Management API üzerinden yüklenen konfigürasyonlar

API Proxy konfigürasyonları ve ayarları.

Policy Cache

Politika tanımları

Tüm politika tanımları ve yapılandırmaları.

Token Cache

OAuth2/JWT token'ları

Token doğrulama sonuçları ve token bilgileri.

Metadata Cache

API Proxy metadata bilgileri

API Proxy bilgileri ve routing metadata.

bilgi

Distributed Cache Erişimi:

API Gateway, throttling, quota ve OAuth2 token gibi paylaşılan veriler için Distributed Cache (Hazelcast) kullanır. Cache Server'lar Gateway pod'larından farklı Kubernetes namespace'lerinde çalışabilir. Gateway pod'ları diğer namespace'lerdeki cache sunucularına Kubernetes service discovery kullanarak erişebilir (örn: http://cache-http-service.apinizer-cache.svc.cluster.local:8090). Bu, daha esnek bir altyapı yönetimi sağlar. Distributed Cache hakkında daha fazla bilgi için Önbellek Bileşeni sayfasına bakın.

Token Provider API

Token Generation

Access token ve refresh token üretimi

OAuth2 ve JWT token'ların oluşturulması.

Token Validation

Token doğrulama

Token'ların geçerliliğinin kontrol edilmesi.

Token Revocation

Token iptal etme

Token'ların iptal edilmesi ve geçersiz kılınması.

API Gateway Özellikleri

Güvenlik

Authentication
  • OAuth2 / OIDC
  • JWT
  • Basic / Digest Authentication
  • mTLS
Authorization
  • IP Whitelist/Blacklist
  • API Key kontrolü
  • Role-based Access Control
TLS/SSL
  • TLS/SSL sonlandırması
  • SNI desteği
  • Certificate yönetimi
Data Protection
  • Data masking
  • Encryption
  • PII protection

Trafik Yönetimi

Load Balancing
  • Round Robin
  • Least Connections
  • Weighted Round Robin
ipucu

Load balancing stratejileri hakkında detaylı bilgi için Routing ve Upstream sayfasına bakabilirsiniz.

Rate Limiting
  • API bazlı rate limiting
  • Kullanıcı bazlı rate limiting
  • IP bazlı rate limiting
  • Quota yönetimi
Failover
  • Otomatik failover
  • Health check
  • Circuit breaker

Mesaj İşleme

Transformation
  • JSON ↔ XML dönüştürme
  • Message enrichment
  • Field mapping
Validation
  • JSON Schema validation
  • XML Schema validation
  • Message size validation
Routing
  • Conditional routing
  • Content-based routing
  • Version-based routing
Logging
  • Request/Response logging
  • Audit logging
  • Error logging

API Gateway ve API Manager İlişkisi

API Gateway, API Manager'dan konfigürasyon alır ve trafiği işler. İşleyiş akışı:

API Manager (Control Plane)

│ 1. Konfigürasyon Yönetimi
│ 2. Deployment


API Gateway (Data Plane)

│ 3. Local Cache'e Yükleme
│ 4. İstek Karşılama
│ 5. Trafik İşleme
│ 6. Metrik Gönderme


Backend API / Client
1. Konfigürasyon

API Manager'da API Proxy konfigürasyonu yapılır

Tüm yapılandırmalar merkezi olarak yönetilir.

2. Deployment

Konfigürasyon API Gateway'lere deploy edilir

Yapılandırmalar tüm gateway'lere dağıtılır.

3. Cache

API Gateway konfigürasyonu Local Cache'e yükler

Performans için yerel önbelleğe alınır.

4. İstek

İstemci istekleri API Gateway'e gelir

Client istekleri gateway'e yönlendirilir.

5. İşleme

API Gateway konfigürasyonu kullanarak trafiği işler

Politikalar uygulanır ve routing yapılır.

6. Metrikler

Metrikler API Manager'a gönderilir

Performans ve kullanım metrikleri toplanır.

bilgi

API Manager ve API Gateway arasındaki bu işbirliği, merkezi yönetim ve yüksek performanslı trafik işleme arasında denge sağlar.

API Gateway Performans Özellikleri

Düşük Gecikme
  • Optimize edilmiş request handling
  • Local cache kullanımı
  • Async processing
Yüksek Throughput
  • Non-blocking I/O
  • Connection pooling
  • Efficient resource usage
Ölçeklenebilirlik
  • Yatay ölçeklendirme
  • Auto-scaling
  • Load balancing
Yüksek Erişilebilirlik
  • Failover mekanizması
  • Health check
  • Redundancy

Sonraki Adımlar