概述JetStream 为 NATS 增加持久化与流处理能力。本文提供 Stream/Consumer 的关键配置、Ack 与投递策略、保留与去重,以及指标与验证方法。Stream 与保留(已验证)定义主题与分段存储;保留策略:`limits`/`interest`/`workqueue`;压缩与分片:根据吞吐与容量配置文件与分段。Consumer 与投递Ack 策略:`explicit` 确认避免丢失;投递策略:`deliver_policy`(如 `all`/`last`);重试与退避:控制 `ack_wait` 与最大投递次数。去重与一致性使用消息 `id` 去重;Exactly-once 接近实现:幂等消费结合 JetStream 序列保证不重不丢。示例(片段)nats stream add orders --subjects orders.* --retention limits --max-msgs=100000 nats consumer add orders worker --ack explicit --deliver all --ack-wait=30s 验证与监控指标:未确认消息、投递次数、延迟与错误率;回归:发布前后端到端耗时与丢失/重复比对;常见误区使用自动 ack 导致异常丢失;不合理保留策略造成存储膨胀或丢失;结语以合理的 Stream/Consumer 配置、明确的 Ack 与投递策略、保留与去重配合,并以监控与回归验证,JetStream 能在流式场景稳定运行。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.941478s