smaple.tr
API gateway

API Gateway ve Mikroservis Mimarisi: Kong, AWS Gateway ve Service Mesh

Mehmet Kurtipek
31 Temmuz 2026
8 dk okuma
API gateway
mikroservis
Kong
service mesh
circuit breaker
Kubernetes

Monolitik Mimari vs. Mikroservis: Neden Önemli?

Yazılım geliştirmede iki temel mimari yaklaşım vardır. Geleneksel monolitik yapıda, tüm uygulamanız tek bir kod tabanı içinde birlikte çalışır. Bu yaklaşım başlangıçta basit ve hızlıdır ancak uygulama büyüdükçe sorun yaratır. Küçük bir değişiklik yapmak bile tüm sistemi etkileyebilir ve test etmek karmaşıklaşır.

Mikroservis mimarisi ise uygulamayı bağımsız, küçük hizmetlere böler. Her servis kendi yaşam döngüsüne, veri tabanına ve teknoloji seçimlerine sahiptir. Bir servisi güncellemek diğerlerini etkilemez. Bu esneklik, büyük ölçekli sistemlerde kritik önemdir.

Temel Farklar

Özellik Monolitik Mimari Mikroservis Mimarisi
Deployment Tek parça olarak Bağımsız servisler olarak
Skalabilite Tüm uygulama ölçeklenir Sadece gerekli servis ölçeklenir
Teknoloji Stack Tekil teknoloji Çoklu teknoloji seçimi
Veri Yönetimi Merkezi veritabanı Dağıtılmış veri yönetimi
Komunikasyon İç fonksiyon çağrıları API, RPC, Event stream
Test Karmaşıklığı Düşük (başlangıçta) Yüksek (entegrasyon testleri)
Başarısızlık Yalıtımı Tüm sistem etkilenir Tek servis etkilenir

API Gateway Nedir?

API Gateway, müşteri uygulamalarının (web, mobil, üçüncü taraf) ilk temas noktasıdır. Tüm istekleri alır, doğrular, yönlendirir ve yanıt verir. Mikroservis mimarisinde, yüzlerce servisi yönetmenin merkezi kontrol noktası olarak çalışır.

Temel Görevleri

API Gateway'in işlevleri işletme açısından şu şekilde özetlenebilir:

  1. İstek Yönlendirmesi: Gelen istekleri doğru servise gönderir
  2. Kimlik Doğrulama: Kullanıcıları tanır ve yetkilendirme kontrolü yapar
  3. Hız Kontrolü: Sistemin aşırı yüklenmesini önleyen hız sınırlaması
  4. Veri Birleştirme: Birden fazla servisten veri alıp tek yanıt halinde sunma
  5. Protokol Dönüşümü: Farklı iletişim protokolleri arasında çeviri yapma
  6. Yük Dağıtımı: Istekleri birden fazla sunucuya dengeli şekilde dağıtma
  7. Önbellekleme: Sık istenen verileri hızlı erişim için saklama
  8. İzleme ve Kayıt: Tüm API isteklerini belgeleme ve analiz etme

Basit bir analoji ile: API Gateway, bir hastanedeki resepsiyonist gibidir. Hastaları doğru doktora yönlendirir, kimliğini kontrol eder, acil durumları tanır ve hasta akışını dengeler.

API Gateway Çözümleri Karşılaştırması

Üç ana seçeneğiniz vardır: Kong, AWS API Gateway ve Traefik. Her birinin güçlü ve zayıf yönleri vardır.

Özellik Kong AWS API Gateway Traefik
Kurulum Karmaşıklığı Orta Düşük (AWS yönetir) Düşük
Ölçeklenebilirlik Yüksek Çok Yüksek (otomatik) Yüksek
Maliyet Düşük/Orta (açık kaynak) Yüksek (kullanım başına) Ücretsiz
Entegrasyon Kubernetes, Docker AWS ekosistemi Kubernetes
Plugin Seçeneği Geniş (600+) Sınırlı Orta
Performans Mükemmel Mükemmel İyi
GraphQL Desteği Evet Evet Hayır
gRPC Desteği Evet Evet Evet

Kong Nedir?

Kong, açık kaynaklı bir kurumsal-grade API Gateway'dir. Nginx tabanlı olarak yüksek performans sunar ve geniş bir eklenti ekosistemi vardır. Birçok kurumsal kuruluş Kong'u seçer çünkü kontrol tam olarak ellerinde kalır.

Kong'un Avantajları:

  • Yüksek performans
  • Geniş eklenti seçeneği
  • Tam kontrol ve özelleştirme
  • Docker ve Kubernetes desteği

Kong'un Dezavantajları:

  • Veritabanı gerekli
  • Konfigürasyon öğrenme eğrisi
  • Enterprise özellikleri pahalı

AWS API Gateway

AWS'nin yönetilen hizmetidir. Sunucu yönetimine gerek yoktur ve AWS Lambda ile sorunsuz çalışır. AWS'ye bağlı olmaktan rahatsız değilseniz, bu en basit çözümdür.

Avantajları:

  • Sunucu yönetimi yok
  • AWS Lambda entegrasyonu
  • Otomatik ölçekleme
  • Yerleşik güvenlik özellikleri

Dezavantajları:

  • Ödeme yapı karmaşık ve maliyetli olabilir
  • AWS'ye bağımlılık
  • Sınırlı özelleştirme

Traefik

Modern Kubernetes ortamları için tasarlanmış, açık kaynaklı çözüm. Kubernetes kullanıyorsanız ve basit bir çözüm istiyorsanız, Traefik mükemmeldir.

Avantajları:

  • Kubernetes dostu
  • Otomatik SSL/TLS sertifikası
  • Dinamik yapılandırma
  • Tamamen ücretsiz

Dezavantajları:

  • Kong kadar geniş eklenti ekosistemi yok
  • Gelişmiş hız sınırlama özellikleri eksik

Service Discovery: Servisleri Bulma

Mikroservis mimarisinde, servislerin nerede olduğunu otomatik olarak öğrenmeye ihtiyacınız vardır. Servisler sürekli başlıp durur, silinir ve yeni örnekleri oluşturulur. Tüm bu değişiklikleri manuel olarak takip etmek imkansızdır.

Service Discovery iki şekilde çalışır. Client-side yaklaşımda, müşteri uygulaması servislerin listesini bulup doğrudan iletişim kurar. Server-side yaklaşımda ise API Gateway bu işi yapar ve müşteri sadece API Gateway'i bilir. Server-side daha yaygındır çünkü daha basittir.

Kubernetes kullanıyorsanız, hali hazırda yerleşik bir service discovery sistemi vardır. Kubernetes DNS otomatik olarak servisleri adlandırır ve diğer servisler bu adları kullanarak iletişim kurabilir. Kubernetes kullanmıyorsanız Consul gibi ayrı bir araç gerekir.

Circuit Breaker: Hata Yönetimi

Dağıtılmış sistemlerde, bir servis herhangi bir anda başarısız olabilir. Diğer servisler bu başarısızlığa nasıl tepki verir? Eğer başarısız servise istek göndermeye devam ederlerse, gecikme artar ve sistem çöker.

Circuit Breaker, elektrik devresindeki otomatik sigorta gibi çalışır. Bir servis başarısız olduğunda, bu servise yeni istekler göndermeyi durdurur. Bunun yerine hata döndürür veya önceden saklanmış veriyi kullanır. Periyodik olarak hizmetin iyileşip iyileşmediğini kontrol eder.

Circuit Breaker'ın üç durumu vardır: Kapalı (normal çalışma), Açık (servis başarısız, yeni istekler kabul etmiyor) ve Yarı Açık (servisi test etme). Bu sistem, tek bir başarısız servisten kaynaklanan problemlerin tüm sistemi etkilemesini önler.

Saga Pattern: Karmaşık İş İşlemleri

Başarılı bir sipariş oluşturmak, aslında birden fazla servisi içerir: siparişi kaydet, stoktan azalt, ödeme işle, bildirim gönder. Tüm adımlar başarılı olması gerekir; bir adım başarısız olursa, önceki adımlar geri alınmalıdır.

Saga Pattern, dağıtılmış işlemleri yönetmek için iki yöntem sunar. Orkestrasyon yönteminde, merkezi bir koordinatör tüm adımları kontrol eder. Başarısız olursa, önceki işlemleri geri alır. Koreografi yönteminde ise, servisler olaylar aracılığıyla haberleşir. Bir servis işi bitince, diğer servisi tetikleyen bir olay yayınlar. Bu yöntem merkezi kontrol olmadan karmaşık iş akışlarını yönetir.

Event-Driven Mimarisi: RabbitMQ vs Kafka

Servisler asenkron olarak haberleşmesi gerekir. Bir servisten diğerine direkt istek yerine, olayları kuyruğa koyarlar. Diğer servisler bu olayları dinler ve işler.

RabbitMQ basit ve anlaşılması kolaydır. Güvenilir mesaj teslimi sağlar. Belirli durumlar için uygun bir çözümdür. Ancak çok yüksek throughput gerektiğinde sınırlı kalır.

Kafka ise yüksek hacim işleme için tasarlanmıştır. Milyonlarca mesajı saniye başına işleyebilir. Olayları yeniden oynayabilir, geçmiş verileri analiz edebilir. Karmaşık veri akışı senaryoları için Kafka, RabbitMQ'dan daha iyidir.

Service Mesh: Servisler Arası Altyapı

Service Mesh, servisler arasındaki tüm iletişimi yönetmek için özel bir altyapı katmanıdır. Her servisin yanında küçük bir "proxy" çalışır. Bu proxy'ler, servisler arası tüm trafiği kontrol eder.

Istio ve Linkerd, popüler Service Mesh çözümleridir. Istio zengin özelliklere sahiptir ve geniş bir kontrol sunar. Linkerd daha hafif ve hızlıdır, minimalist bir yaklaşım tercih edenler için iyidir.

Service Mesh kullanmanın faydası, servis kodunun değiştirilmesi gerekmemesidir. Ağ yöneticisi veya DevOps mühendisi, tüm trafiği yönetebilir. Otomatik şifreleme, yeniden denemeler, timeout ayarları, traffic splitting gibi işlemler yapılabilir.

Smart Maple'nin Gerçek Dünyadaki Uygulaması

Smart Maple Ankara, fintech startup'larından banka sistemlerine kadar birçok kuruluşun mikroservis mimarisine geçişini yönetmiştir. Tipik bir kurulumda:

  • API Gateway: Kong (özel kimlik doğrulama eklentileri ile)
  • Konteyner Yönetimi: Kubernetes
  • Mesaj Kuyruğu: Kafka
  • Service Mesh: Istio
  • İzleme: Prometheus, Grafana
  • Dağıtılmış İzleme: Jaeger
  • Otomasyonu: GitHub Actions ve ArgoCD

Bu teknoloji yığını şu mimariye sahiptir:

Yük dengeleyici, Kong API Gateway'e istekleri gönderir (üç kopyada çalışan). Kong, Kubernetes kümesi içinde çalışan servisler arasında istekleri dağıtır. Her servis PostgreSQL, Redis ve Kafka kümesi gibi durum yönetimi sistemlerine erişebilir.

Kubernetes'te Dağıtım

Kubernetes, konteynerleştirilmiş uygulamaları ölçeklenebilir şekilde çalıştırmak için tasarlanmıştır. Pod (en küçük çalışan birim) ile başlar, Service (ağ erişimi) ile sunarsınız, Deployment (kopya yönetimi) ile ölçeklersiniz.

Kubernetes içinde ConfigMap gizli bilgiler tutmadan yapılandırma verileri saklar, Secret ise şifreler, tokenlar ve parolalar gibi duyarlı verileri korur. StatefulSet durum yönetimi gerektiren uygulamalar (veritabanlar) için kullanılır. Ingress, dış dünyaya erişim sağlar.

API Gateway Güvenliği

Güvenlik, API Gateway'in en kritik fonksiyonlarından biridir.

Kimlik Doğrulama: JWT, OAuth 2.0 veya API anahtarları kullanarak istekleri doğrularsınız.

Hız Sınırlaması: IP başına, kullanıcı başına veya global olarak istek sayısını sınırlandırırsınız. Bu, kötü niyetli kişilerin sistemi aşırı yüklemesini önler.

Input Doğrulama: Client'tan gelen tüm veriler kontrol edilir ve zararlı veri temizlenir.

CORS ve HTTPS: Hangi kaynakların API'nize erişebileceğini belirlersiniz ve tüm iletişim şifrelenmiş olmalıdır.

İzleme ve Gözlemlenebilirlik

Dağıtılmış sistemlerde, bir problem olduğunda nerede olduğunu bulmak zordur. Prometheus metrikleri toplar, Grafana görselleştirir. Jaeger, isteklerin tüm servisler arasında nasıl hareket ettiğini gösterir. Elasticsearch/Logstash/Kibana (ELK Stack) ise tüm logları toplar ve aranabilir hale getirir.

Dikkat etmeniz gereken temel metrikler:

  • İstek Gecikmesi: API'ın ne kadar hızlı yanıt verdiği
  • Hata Oranı: Başarısız isteklerin yüzdesi
  • Verimlilik: Saniye başına işlenen istek sayısı
  • Kaynak Kullanımı: CPU ve bellek tüketimi

En İyi Uygulamalar

  1. API Versiyonlandırması: /api/v1/, /api/v2/ gibi adlandırma ile eski istemcileri kütmeyin
  2. Tutarlı Hata Cevapları: Tüm hatalar aynı formatta dönülmelidir
  3. Etkisizlik: Aynı istek tekrarlanırsa aynı sonuç döndürülmelidir
  4. Timeout Ayarları: Hiçbir istek sonsuza kadar beklememelidir
  5. Zarif Kapatma: Servisler düzgün bir şekilde kapanmalı, mevcut istekleri bitirmelidir
  6. Sağlık Kontrolleri: Servisin canlı ve hazır olup olmadığı belirtilmelidir
  7. Yapılandırılmış Loglar: JSON formatında loglar, analiz ve arama kolaylaştırır
  8. Dağıtılmış İzleme: İstekleri tüm servisler arasında takip edin
  9. Güvenlik Başlıkları: X-Frame-Options, X-Content-Type-Options gibi başlıklar ekleyin
  10. Dokümantasyon: OpenAPI/Swagger ile API'nizi belgelendirin

Maliyetlendirme

Smart Maple'de tipik bir ekip yapısı şu şekildedir:

  • 2 Kıdemli Backend Geliştirici: 2.000 dolar
  • 1 DevOps Mühendisi: 1.000 dolar
  • Toplam Aylık Geliştirici Maliyeti: 3.500 dolar

AWS gibi bulut altyapısının maliyeti ek olarak hesaplanır ve kullanıma bağlıdır.

Sonuç

API Gateway ve mikroservis mimarisi, modern yazılım geliştirmenin temeli haline gelmiştir. Kong, AWS API Gateway ve Traefik gibi çözümler, bu kompleksiteyi yönetmeyi kolaylaştırır. Circuit Breaker, Saga Pattern ve Service Discovery gibi araçlar, dağıtılmış sistemleri güvenilir ve hızlı yapar.

Smart Maple Ankara, bu teknolojileri bütünleştiği şekilde kullanarak:

  • 99.9% çalışabilirlik
  • 100 milisaniye altında yanıt süresi
  • Bağımsız dağıtım kabiliyeti
  • Kolay sorun giderme

sağlamaktadır. Eğer işletmeniz mikroservis mimarisine geçmeyi düşünüyorsanız, Smart Maple ile iletişime geçin ve kurumunuza özel bir çözüm geliştirelim.


Smart Maple ile API ve mikroservis mimarisi hakkında daha fazla bilgi edinin.

İlgili Makaleler

10 Ağustos 2026

MLOps Rehberi: Makine Öğrenmesi Modellerini Production'a Taşıma

Giriş: MLOps Nedir ve Neden Önemlidir? Makine öğrenmesi modelleri geliştirmek günümüzde nispeten kolaydır. Açık kaynak kütüphaneleri kullanarak son derece başarılı modeller oluşturabiliriz. Ancak bu modelleri production ortamına taşıyarak, ölçeklendirebilir, güvenilir ve sürdürülebilir şekilde çalıştırmak tamamen farklı bir hikayedir. Araştırmalara göre, veri bilimcileri tarafından geliştirilen makine öğrenmesi modellerinin %87'si hiçbir zaman production ortamına ulaşmaz. Bu başarısızlı

Devamını Oku: MLOps Rehberi: Makine Öğrenmesi Modellerini Production'a Taşıma
9 Ağustos 2026

LLM Fine-Tuning ve Özel Model Eğitimi Rehberi [2026]

LLM Fine-Tuning: Kurumsal Yapay Zeka Stratejisinin Temel Taşı Büyük dil modelleri (LLM), genel amaçlı metin üretimi ve anlama konusunda etkileyici performans sergiliyor. Ancak kurumsal ortamlarda belirli bir alan, terminoloji veya iş sürecine uyum sağlamaları gerektiğinde, genel bilgileri çoğu zaman yetersiz kalıyor. Bu noktada fine-tuning, yani ince ayar süreci devreye giriyor. Fine-tuning sayesinde mevcut bir temel modeli, kendi verileriniz ve ihtiyaçlarınız doğrultusunda özelleştirmek

Devamını Oku: LLM Fine-Tuning ve Özel Model Eğitimi Rehberi [2026]
8 Ağustos 2026

Bilgisayarlı Görü Uygulamaları: Nesne Tespiti, OCR ve Endüstriyel AI

Bilgisayarlı Görü Uygulamaları: Endüstriyel ve Medikal AI'nin Temel Teknolojisi Bilgisayarlı görü, makine öğrenmesinin en etkili alanlarından biridir. Türkiye'de yaşanan dijital dönüşüm sürecinde, özellikle üretim, sağlık ve lojistik sektörlerinde görü tabanlı otomasyon kritik hale gelmiştir. Smart Maple olarak Ankara'da geliştirdiğimiz çözümler, son beş yılda 150+ kuruluşunun üretim verimliliğini ortalama %35 oranında artırmıştır. Bu rehberde, bilgisayarlı görü teknolojisinin iş değeri

Devamını Oku: Bilgisayarlı Görü Uygulamaları: Nesne Tespiti, OCR ve Endüstriyel AI