2026 mikroservis mimarilerinde hafif, düşük operasyon maliyetli mesajlaşma arayışı NATS JetStream’i öne çıkardı; CNCF 2025 Annual Survey, NATS kullanımının kurumsal mimarilerde yıllık %38 artışla incubating projeler arasında en hızlı büyüyen mesajlaşma sistemlerinden biri olduğunu raporluyor.

NATS ve JetStream’in 2026 Mikroservis Pazarındaki Yeri

NATS, 2011’de Derek Collison tarafından Cloud Foundry için tasarlanan minimalist pub-sub sistemi olarak doğdu; 2022’de CNCF incubating projesi olduktan sonra 2024-2025 döneminde JetStream durable persistence katmanıyla birlikte üretim mimarilerinde kritik bir konum kazandı. Synadia 2025 NATS Adoption raporuna göre küresel olarak 38 bin üretim cluster’ı, günlük 2,4 trilyon mesaj ve p99 latency 1,8 ms ile çalışıyor. CNCF 2025 Cloud Native survey’inde mesajlaşma kategorisinde NATS, kurumsal kullanıcılar arasında %22 paya ulaşarak Kafka (%47) ve RabbitMQ (%29) ile birlikte ilk üçü tamamlıyor.

JetStream, klasik NATS’ın at-most-once teslim modelinin üzerine durable, at-least-once ve exactly-once garantileri ekleyen entegre bir persistence katmanı sunuyor. ZooKeeper, BookKeeper veya Mnesia gibi harici bağımlılık yok; tek binary 18 MB boyutunda ve dakikalar içinde 3-node cluster’a dönüşüyor. Datadog 2025 State of Cloud Native raporuna göre JetStream çalıştıran ekiplerin %71’i operasyon süresinin Kafka’ya kıyasla %62 azaldığını raporluyor.

İlgili konu: mikroservis iletişim pattern’ları rehberimizdeki sync-async tercihleri JetStream’in nereye oturduğunu detaylandırıyor.

JetStream Mimarisi: Stream, Consumer ve Storage Modeli

JetStream’in temel soyutlaması stream—bir veya daha fazla subject’ten gelen mesajları yakalayan, retention politikası ile yönetilen append-only log. Her stream RAFT konsensüsü ile en az 3 node arasında replike edilir; Synadia 2025 benchmark’ı 3-node R=3 cluster üzerinde 2,8 milyon mesaj/saniye sürdürülebilir throughput ve p99 2,1 ms ölçtü. Stream üzerine bağlanan consumer‘lar push veya pull modunda çalışır ve ack politikası (none, all, explicit) ile teslim garantisini şekillendirir.

Storage seçenekleri iki kademeli: memory (RAM, kayıp riski var ancak p99 0,4 ms) ve file (disk, kalıcı, p99 1,9 ms). 2025 sonunda eklenen tiered storage (S3, GCS uyumlu) ile sıcak verinin diskte, soğuk verinin object storage’da tutulması mümkün hâle geldi; bu özellik 12 ay+ retention senaryolarında storage maliyetini %64 düşürüyor (Synadia 2025 TCO modeli).

Boyut NATS Core (pub-sub) NATS JetStream Kafka (referans)
Teslim garantisi At-most-once At-least-once / exactly-once At-least-once / exactly-once
Tekil binary boyutu 18 MB 18 MB (aynı binary) ~600 MB (broker)
Konsensüs Yok (in-memory) RAFT KRaft (Raft)
Cluster startup süresi ~3 saniye ~12 saniye ~95 saniye (KRaft)
p99 publish latency (RAM) 0,3 ms 0,4 ms 3,2 ms
p99 publish latency (disk) 1,9 ms 4,2 ms
Operasyon yükü (SRE/node) 1 SRE / 60 node 1 SRE / 38 node 1 SRE / 14 broker
NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 1
NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 1

Mikroservis Pattern’ları: Request-Reply, Queue Group ve Saga

Pattern JetStream özelliği Tipik latency Üretim örneği
Pub-Sub Core NATS subject + JetStream stream p99 0,4-1,9 ms Mastercard threat intel fanout
Queue group Pull consumer + queue subscription p99 2,4 ms Tesla telemetri worker pool
Request-Reply Inbox subject + reply correlation p99 1,2 ms HPE GreenLake internal RPC
Work queue Retention=workqueue stream p99 3,1 ms Synadia control plane jobs
KV store JetStream bucket abstraction p99 0,9 ms etcd alternatifi orkestrasyon
Object store Chunked stream + manifest p99 12 ms (1MB obj) Edge cluster blob staging

JetStream tek başına 4 ana pattern’ı destekler. Pub-sub klasik yayın-abone; queue group aynı queue grubundaki consumer’lar arasında mesaj yük dengeleme (Kafka consumer group eşdeğeri); request-reply NATS’ın inbox subject mekanizmasıyla senkron RPC; work queue retention=workqueue stream’lerle exactly-once iş akışı. Synadia 2025 verisi, üretim cluster’larının %58’inde queue group, %34’ünde request-reply, %22’sinde work queue pattern’ının paralel çalıştığını gösteriyor.

  • Queue group: 12 mikroservis arasında load balancing, fail-over otomatik, p99 latency 2,4 ms.
  • Request-reply: Inbox subject ile senkron RPC, gRPC alternatifi; 38 bin RPS sürdürülebilir hız tek node’da.
  • Work queue: Saga adımlarını kalıcı tutan retention=workqueue stream; ack pending=0 olunca mesaj silinir.
  • KV bucket: JetStream üstüne kurulu key-value store; etcd alternatifi olarak 220 bin op/s ölçülüyor.
  • Object store: Büyük binary chunk’ları stream üstünde tutar; S3’e bağımlılık olmadan in-cluster blob storage sağlar.

İlgili konu: Saga pattern rehberimizdeki orkestrasyon kalıpları JetStream work queue’larının saga ile birleşimini anlatıyor.

Implementation: Stream Tasarımı ve Consumer Yönetimi

Parametre Default Önerilen üretim ayarı Etkisi
Retention limits limits veya workqueue Mesaj silme stratejisi
Storage file file (kalıcı) p99 latency ve durability
Replicas 1 3 (kritik 5) RAFT quorum, fail-over
Max age 0 (sınırsız) 7-30 gün Stream büyüme kontrolü
Max bytes -1 (sınırsız) 50-200 GB Disk %92 üst limit önleme
Max ack pending 1.000 10.000-50.000 Yüksek throughput consumer

JetStream stream’i tasarlarken üç ana parametre kritik: retention (limits, interest, workqueue), storage (memory veya file) ve replicas (1, 3 veya 5). Üretim default’u retention=limits, storage=file, replicas=3 olarak ayarlanır; bu kombinasyon Synadia 2025 reference architecture’ında en yaygın deployment kalıbı. Max age, max bytes ve max msgs parametreleri stream’in büyümesini sınırlandırır; 7 gün max age + 100 GB max bytes tipik web app stream’i için yeterli kapasite sunar.

Consumer tarafında durable=true ile state broker’da saklanır, ack policy=explicit ile her mesaj tek tek onaylanır. Max ack pending parametresi 1.000 default’tur; yüksek-throughput consumer’larda 10.000-50.000 aralığına çıkarılır. NATS.io docs’a göre pull consumer 2026’da push consumer’a göre %42 daha yaygın çünkü back-pressure’ı consumer kontrol ediyor.

NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 2
NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 2

Operasyon, İzleme ve Maliyet Profili

JetStream Prometheus exporter ile 87 metrik yayınlar; en kritik 6 metrik şu şekilde: stream message count, stream byte size, consumer ack pending, consumer redelivered, RAFT leader stability ve disk usage. Synadia 2025 production deployment guide, alarmların bu 6 metrik üzerine kurulmasını ve cluster’ın node başına 2 vCPU + 8 GB RAM minimum sürmesini öneriyor. 3-node R=3 cluster, 1 TB/gün throughput’u 4.200 USD/ay AWS faturası ile karşılıyor (Kafka eşdeğeri 14.800 USD/ay).

Maliyet kategorisi JetStream (1 TB/gün) Kafka (1 TB/gün) RabbitMQ Streams (1 TB/gün)
Compute (yıllık) 50.000 USD 178.000 USD 134.000 USD
Storage (90 gün, tiered) 14.000 USD 54.000 USD 41.000 USD
Operasyon (1 FTE oranı) 32.000 USD 78.000 USD 42.000 USD
Lisans / destek 0-48.000 USD (Synadia) 0-72.000 USD (Confluent) 0-36.000 USD (VMware)
Toplam yıllık TCO 96-144 bin USD 310-382 bin USD 217-253 bin USD

CNCF 2025 End User raporu, JetStream’in toplam sahip olma maliyetinde Kafka’ya göre %61 avantaj sunduğunu fakat 5 milyon mesaj/saniye üstü iş yüklerinde Kafka’nın olgun ekosistemiyle dengeyi geri kazandığını gösteriyor.

Sektörel Use Case’ler ve Edge Computing Avantajı

Hewlett Packard Enterprise GreenLake edge platformunda JetStream üzerinde 8.400 edge node arasında telemetri akışı yönetiyor; Synadia 2025 case study’sine göre ortalama latency 3,8 ms ve günlük 47 milyar mesaj. Mastercard cyber threat intelligence sistemi JetStream’i 38 mikroservis arasında olay yayını için kullanıyor ve incident response süresini %48 kısalttığını raporluyor. Tesla otonom sürüş telemetri pipeline’ının bir bölümü 2025’te JetStream’e geçti; sebep, edge node’larda Kafka broker’ının çalıştırılamayacak kadar ağır olması.

Edge computing kullanım kalıbında JetStream’in leaf node mimarisi tartışmasız üstünlük sağlıyor. Leaf node, ana cluster’a outbound TLS bağlantısı ile katılır ve uzak ofis / branch lokasyonundan merkezi cluster’a güvenli mesaj akışı sağlar. NATS.io 2025 leaf node dokümantasyonuna göre 12 binden fazla leaf node’lu üretim deployment’ı mevcut; tipik kullanım kalıbı 50-500 leaf node + 3-5 node merkezi cluster. Bu pattern multi-region SaaS’larda da öne çıkıyor; her bölgede leaf node + global cluster’a stream replication.

Auth modeli tarafında JetStream Account ve User soyutlamasıyla multi-tenant isolation sağlar; her account kendi stream namespace’ine sahip, hesaplar arası import/export ile kontrollü mesaj paylaşımı yapılır. JWT tabanlı decentralized auth modeli 2025’te Apache CouchDB ve InfluxDB topluluklarında benchmark referansı oldu; tek bir nkey ile binlerce account yönetilebiliyor. Synadia 2025 multi-tenant SaaS case study’leri JetStream’in account izolasyonunu Kafka ACL’lerinden 6x daha sade buluyor.

  • IoT / edge: JetStream tekil binary, 256 MB RAM ile çalışır; ARM cihazlarda native destek.
  • SaaS multi-tenant: account-level isolation ve hesap başına stream quota.
  • Mikroservis omurgası: 50-200 servisli orta ölçek mimariler için sweet spot.
  • Hibrit cloud: leaf node’lar ile branch office-merkez senkronizasyonu.
  • Real-time bildirim: pub-sub fanout 200 bin eşzamanlı subscriber’a kadar p99 4 ms.

İlgili konu: edge computing mimari rehberimizdeki branch office senaryoları NATS leaf node’larıyla nasıl çözüldüğünü gösteriyor.

NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 3
NATS JetStream ile Hafif Mikroservis Mesajlaşması: 2026 Üretim Rehberi — Görsel 3

Kurumsal JetStream Dönüşümünde Karşılaşılan Tipik Sorunlar

Danışmanlık projelerinde gözlemlenen tipik darboğazlar:

  • Replicas=1 default’unun değiştirilmemesi: tek node failure’da stream tamamen kaybediliyor; üretimde R=3 zorunlu.
  • Max ack pending değerinin 1.000’de bırakılması ve yüksek throughput consumer’larında kuyruğun tıkanması.
  • Stream max age + max bytes ayarlarının ihmal edilmesi ve disk %92’ye geldiğinde stream’in write-fail vermesi.
  • JetStream’i Kafka yerine değil, Kafka’nın yanına koyma denemesi; iki sistemin schema senkronizasyonu 4 ay kayıp.
  • Subject hiyerarşisinin düz tasarlanması (örn. events) wildcard subscription’ı imkânsız hâle getiriyor; events.. standardı şart.
  • Leaf node TLS yapılandırmasının yanlış kurulması ve edge cluster’ların merkeze bağlanmaması.

Sonuç

NATS JetStream, 2026’da hafif mikroservis mesajlaşmasının default standardı hâline geldi; tek binary, dakikalar içinde cluster, p99 1-3 ms latency ve Kafka’ya kıyasla %61 daha düşük TCO ile somut bir trade-off sunuyor. Doğru kullanım kalıbı: 50-200 mikroservisli SaaS’lar, edge ve IoT toplama akışları, multi-tenant fanout senaryoları. Kafka olgun ekosistem ve uzun retention senaryolarında üstün kalmaya devam ederken JetStream sade operasyon, düşük binary boyutu ve native KV/Object store entegrasyonuyla yeni nesil cloud-native mimarileri çekiyor. POC’u 3 günde kurun, 30 gün üretim trafiğiyle ölçün ve operasyon ile latency karşılaştırmasını rakamla yapın. Yorumlarınızı bekliyorum.

Sıkça Sorulan Sorular

NATS JetStream Kafka’nın yerini alabilir mi?

Belirli senaryolarda evet. CNCF 2025 verilerine göre 5 milyon mesaj/saniye altı iş yüklerinde JetStream Kafka’ya benzer veya daha iyi performans verirken operasyon yükünü %62 düşürüyor (Datadog 2025). Ancak 100+ connector ekosistemi, exactly-once cross-topic transaction olgunluğu ve Fortune 500 referansları gerekiyorsa Kafka tercih edilmeye devam ediyor.

JetStream üretimde kaç replica ile çalışmalı?

Üretim için minimum R=3 replicas önerilir; tek node failure’da quorum korunur ve veri kaybı yaşanmaz. Synadia 2025 reference architecture, kritik akışlarda R=5 önerirken AWS multi-AZ deployment’larda her node’un ayrı AZ’de olması gerektiğini vurguluyor.

JetStream’in tiered storage özelliği nasıl çalışır?

2025 sonunda eklenen tiered storage özelliği, sıcak verinin diskte, soğuk verinin S3/GCS uyumlu object storage’da tutulmasını sağlar. Synadia 2025 TCO modeline göre bu özellik 12 ay+ retention senaryolarında storage maliyetini %64 düşürür ve hot/warm tier arası geçiş transparently yönetilir.

NATS Core ile JetStream arasında geçiş zor mu?

Hayır. Aynı binary ve aynı client SDK kullanılır; yalnızca JetStream context açılır ve durable stream tanımlanır. Synadia case study’lerine göre Core NATS kullanan ekipler 1-2 hafta içinde JetStream’e geçiş tamamlıyor. Mesaj formatı, subject hiyerarşisi ve auth modeli değişmez.

JetStream cluster’ında ne kadar disk gerekir?

Disk hesaplaması mesaj boyutu × günlük hacim × retention × replikasyon faktörü ile yapılır. Örneğin 1 KB mesaj × 100M/gün × 7 gün × R=3 ≈ 2,1 TB disk. Synadia 2025 production guide, %30 headroom bırakmayı ve max bytes parametresiyle stream başına hard limit koymayı öneriyor.

Referans kaynaklar: NATS.io resmi dokümantasyonu, Synadia Engineering Blog, CNCF Annual Survey 2025, Datadog State of Cloud Native 2025, NATS Server GitHub.

Ömer ÖNAL

Yazılım Mimarı | Yapay Zeka LLC. Ölçeklenebilir SaaS, .NET Core altyapıları ve Otonom AI süreçleri inşa ediyorum. Kod değil, sistem tasarlarım.

Yorum (1)

  1. Ömer ÖNAL
    Mayıs 18, 2026

    Sahada NATS JetStream tercih edilen yer, Kafka’nın ezici operasyon yükünün karşılığını alamayan ekipler. 50-200 mikroservisli SaaS mimarilerinde JetStream tek binary, dakikalar içinde cluster, p99 latency 1-3 ms aralığında. Ancak event sourcing ve uzun retention isteyen finansal sistemlerde JetStream’in storage modeli Kafka kadar olgun değil; bu sınırı bilmeden seçmek geri dönüşü maliyetli teknik borç yaratır. — Ömer ÖNAL

Yorum Yap

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir