| 默认 | enable.auto.commit=true,auto.commit.interval.ms=5000 |
|---|---|
| 风险 | 未处理完的位移已提交,故障后跳过数据 |
| 建议 | 管道类消费关闭自动提交,改为处理后手动提交 |
关闭自动提交
关闭自动提交
enable.auto.commit=false自动提交看似省事,但在“先提交后处理”的语义下,进程崩溃会直接造成数据空洞。
开启自动提交后,消费者在后台按 auto.commit.interval.ms 周期提交“poll 到的位移”,与业务处理是否完成无关;处理崩溃时会丢这一段数据。
| 默认 | enable.auto.commit=true,auto.commit.interval.ms=5000 |
|---|---|
| 风险 | 未处理完的位移已提交,故障后跳过数据 |
| 建议 | 管道类消费关闭自动提交,改为处理后手动提交 |
enable.auto.commit=false