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 |

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.

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.

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
Mayıs 18, 2026Sahada 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