spring-boot - 使用 KafkaListener 时,如何检查主题消息是否已读完?
问题描述
使用@KafkaListener 时,如何检查主题消息是否已读完?
解决方案
请参阅有关在没有更多记录可读取时获取事件通知的答案。
您可以Consumer
在事件中使用 获取当前的position()
, 和endOffsets()
; 下面显示了如何获得结束偏移:
@EventListener
void listen(ListenerContainerIdleEvent event) {
System.out.println(event);
try {
System.out.println(event.getConsumer().assignment());
System.out.println(event.getConsumer().endOffsets(event.getConsumer().assignment(), Duration.ofSeconds(5)));
}
catch (Exception e) {
e.printStackTrace();
}
}
推荐阅读
- database - MongoDB中的数据库项目
- css - Blogdown::build_site 看不到自定义 css 文件
- c# - 如何模拟具有统一二维重力的动态轨道(现实)
- c# - Blazor WebAssembly:将 Float32Array 从 javascript 发送到 .NET
- kivy - dlopen 失败:“/data/data/org.test.solvescan/files/app/_python_bundle/site-packages/cv2/cv2.so”是 64 位而不是 32 位
- java - 为什么运行单元测试时没有触发spring boot的@Retryable?
- c# - 具有多个参数的 OData 控制器方法
- javascript - 使用 NestJS 处理未处理的承诺拒绝
- c++ - QT Creator 无法从调试器中的标准输入读取
- python - 如何使用 BeautifulSoup 从 html 标签中获取“href”