java - 启动所有侦听器后的 Spring Kafka 事件
问题描述
我正在使用 Spring-Kakfa 连接 kakfa 集群,并且我需要在分配所有主题的所有主题分区后执行一段代码。以下面的代码为例
@Component
public class MyKafkaMessageListener1 {
@KafkaListener(topics = "topic1" , groupId = "cg1")
public void handleMessage(String message){
System.out.println("Msg:"+message);
}
}
@Component
public class MyKafkaMessageListener2 {
@KafkaListener(topics = "topic2, topic3" , groupId = "cg2")
public void handleMessage(String message){
System.out.println("Msg:"+message);
}
}
在将 topic1、topic2 和 topic3 的所有主题分区分配给线程后,我需要执行。可能吗?kafka或spring-kafka中是否有这样的EventHandler?
解决方案
实施ConsumerSeekAware
(或扩展AbstractConsumerSeekAware
),或添加一个ConsumerRebalanceListener
,您将收到对onPartitionsAssigned()
.
推荐阅读
- python-3.x - 数据流 - Apache Beam - 读取 CSV(来自外部来源:互联网)
- node.js - 发送附件节点邮件程序而不将文件存储在服务器中
- deployment - 部署 Web 应用程序的最佳实践
- r - 如何在 r 中使用 Posixct 转换为日期时间
- c# - 如何在 asp.net 核心控制器中使用 api 的 URL
- string - Golang 复制工具
- android - AutoCompleteTextView - 更新适配器时,下拉自动关闭
- c# - 无法使用 CLI 在 .NET Core 中添加迁移
- react-native - 我需要从 axios 拦截器内部调用 mobx 操作
- docker - 从 docker 容器内的 gitlab-runner 发出命令