--- title: NATS JetStream 流与持久化订阅实践 keywords: - NATS - JetStream - Stream - Consumer - 持久化订阅 description: 使用 NATS JetStream 创建流与消费者,实现持久化订阅与消息确认,适合高可靠实时场景。 categories: - 文章资讯 - 技术教程 --- # NATS JetStream 流与持久化订阅实践 ## 流与消费者(JS CLI) ``` nats stream add ORDERS --subjects orders.* --storage file --retention limits nats consumer add ORDERS PROC --filter orders.created --ack explicit ``` ## Node.js 示例 ```js import { connect, StringCodec } from 'nats'; const nc = await connect({ servers: 'nats://127.0.0.1:4222' }); const jsm = await nc.jetstream(); const sc = StringCodec(); await jsm.publish('orders.created', sc.encode(JSON.stringify({ id: 1 }))); const c = await jsm.consumers.get('ORDERS', 'PROC'); const iter = await c.fetch({ max_wait: 5000 }); for await (const m of iter) { m.ack(); } ``` ## 总结 JetStream 在 NATS 上提供流与持久化消费者,支持显式确认与多策略保留,适合可靠消息处理。

发表评论 取消回复