作者在实践中提供了两套 Checkpoint 策略,供不同业务权衡:
- 策略 A(标准 Exactly-Once):
checkpointing.interval=60s、mode=EXACTLY_ONCE、timeout=10min。适合计费、审计等强一致场景。 - 策略 B(本案例生产使用):
interval=180s、mode=AT_LEAST_ONCE、timeout=15min、tolerable-failed-checkpoints=10。
选择策略 B 的原因是 OpenAPI 网关属于「超高并发 + 极度重视可用性」的场景:
- 频繁 Checkpoint 会带来 Barrier 对齐停顿,抖动直接影响吞吐。
- Exactly-Once 需要对齐 Barrier,在大状态下开销显著。
- 监控数据的价值主要在趋势和秒级告警,允许极少量重复不会影响业务决策。
- 允许连续失败可防止因 Checkpoint 短暂问题触发作业重启导致的漏点。
因此该场景采用「弱一致性 + 低频打点 + 允许失败」的组合,在可靠性和稳定性之间取得平衡。




