Apache kafka Kafka为消息使用者和流拓扑提供了相同的使用者组

Apache kafka Kafka为消息使用者和流拓扑提供了相同的使用者组,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,我们运行一个集群工作者应用程序,该应用程序依赖Kafka使用高级使用者API来使用消息。群集中的所有节点共享相同的使用者组。现在我们想要的是将部分逻辑迁移到Kafka流处理器API。这里的方法是什么?如果为流拓扑分配了相同的groupId/clientId,那么流拓扑是否会在消息上与现有消费者发生冲突?我们应该分配不同的groupId/clientId吗?流拓扑?说“组”+“后台工作流” Kafka Streams需要、使用并将在组id中插入应用程序.id属性。您不能为Streams API显式

我们运行一个集群工作者应用程序,该应用程序依赖Kafka使用高级使用者API来使用消息。群集中的所有节点共享相同的使用者组。现在我们想要的是将部分逻辑迁移到Kafka流处理器API。这里的方法是什么?如果为流拓扑分配了相同的groupId/clientId,那么流拓扑是否会在消息上与现有消费者发生冲突?我们应该分配不同的groupId/clientId吗?流拓扑?说“组”+“后台工作流”


Kafka Streams需要、使用并将在组id中插入
应用程序.id
属性。您不能为Streams API显式设置
组.id
,AFAIK

Kafka Streams需要,使用并将
application.id
属性插入组id。您不能为Streams API显式设置
group.id
,AFAIK

您是对的。这是来自私有静态最终字符串应用程序\u ID\u DOC=“流处理应用程序的标识符。在Kafka集群中必须是唯一的。它用作1)默认客户端ID前缀,2)用于成员身份管理的组ID,3)变更日志主题前缀。”;你是对的。这是来自私有静态最终字符串应用程序\u ID\u DOC=“流处理应用程序的标识符。在Kafka集群中必须是唯一的。它用作1)默认客户端ID前缀,2)用于成员身份管理的组ID,3)变更日志主题前缀。”;
props.put(StreamsConfig.CLIENT_ID_CONFIG, "background-worker");
props.put(ConsumerConfig.GROUP_ID_CONFIG, "group." + "background-worker");