"Nats"
- Queue 緩衝
在 ingestion 和 processing 之間加 message queue 做 burst 緩衝 — Kafka / NATS / Redis Streams 的選型和引入條件
- NATS core 到 JetStream:fire-and-forget 在哪裡不夠、跨過去要付什麼
Core NATS 的 fire-and-forget 在 consumer 重啟或 rolling deploy 時掉訊息——這不是 bug、是設計。需要訊息不丟就跨進 JetStream(persistence + at-least-once + redelivery)。本文展開 core 與 JetStream 的邊界、stream 與 consumer 的求值模型、實機驗證的 durable pull consumer、5 個把 JetStream consumer 寫成丟訊息與重投風暴的 production 踩坑
- Kafka ↔ NATS:不是 migration、是 messaging paradigm 重設計
Kafka 跟 NATS 不是同類產品(log-based event streaming vs subject-based messaging)、'migration' 字面上不成立;本文釐清兩家 paradigm 邊界、什麼情境真的能換、application 模式重設計的 5 個踩雷(consumer offset 觀念差 / retention model / exactly-once 假設 / schema registry 缺位 / fan-out 模式差)、跟 JetStream 對位 + 混合架構
- NATS JetStream 設計與 supercluster / leaf node:stream、consumer、跨區拓樸與多租戶
NATS JetStream 的 implementation-layer deep article:stream 設計(storage / retention / discard / 容量上限)、consumer 設計(pull/push、explicit ack、AckWait、MaxDeliver、replay)、Cluster Raft / Supercluster gateway / Leaf node edge 三層拓樸、subject-based ACL 多租戶;含 4 個 production 故障演練(AckWait 太短重投、discard policy 選錯丟訊息、leaf node 斷線重連、stream replica 失去 quorum)。
- 3.C34 Netlify:NATS 當全球 metrics/logs 統一資料平面
Netlify 70K+ 網站、10 億 PV/月、跨多雲、NATS 當 all-purpose data plane fan-out bus、超 RabbitMQ 評估。
- 3.C35 Form3:NATS JetStream 多雲低延遲支付
Form3 服務 Tier-1 銀行、500ms SLA、SNS/SQS 吃 300ms 預算、改 NATS+JetStream 跨雲 6x 延遲改善。
- 3.C36 Intelecy:工業 IoT 即時感測 + 多租戶
Intelecy 工廠 gateway 接數萬感測器、< 2 秒往返延遲做即時 ML、從 BoltDB 本地快取演進到 JetStream 持久化。
- 3.C37 MachineMetrics:邊緣到雲端工廠資料管線
MachineMetrics 跨數百工廠、數千機台、1000Hz 採樣、Kinesis 無法跑在 edge、改 NATS Leaf Node + JetStream + KV + Object Store。
- 3.C38 Clarifai:NATS Streaming ML 平台非同步任務
Clarifai custom model 訓練、rolling deploy 掉訊息、改 NATS Streaming queue group、3 週遷移 1 服務、5 月 5 服務、每日 100k+ 訊息 100% uptime。
- 3.C39 Choria:NATS 管 50 萬 server fleet
Choria 替代 Puppet MCollective、NATS 單 binary 無 Zookeeper、4GB node 可達 50 萬 server、wildcard + queue group 做 scatter-gather RPC。
- 3.C40 Resgate:WebSocket-to-NATS realtime API gateway
Resgate 把 NATS subject 暴露成 REST + WebSocket、subject 階層當 schema、event 延遲 < 1ms、純 Core NATS。
- 3.C41 i-flow:NATS 做 OT/IT 跨層整合 bus
i-flow 每日 4 億筆 data operation、200+ OT/IT connector、客戶含 Bosch / Sto / Lenze、NATS 當邊緣到 central 整合 bus。