在网上碰到的问题,想了下使用现有的API还是可以实现的。

首先,需要引入Kafka服务器端代码,比如加入Kafka 1.0.0依赖:

Maven

<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.12</artifactId>
<version>1.0.0</version>
</dependency>

Gradle

compile group: 'org.apache.kafka', name: 'kafka_2.12', version: '1.0.0'

然后编写获取订阅某topic的所有group的方法,代码如下:

/**
* get all subscribing consumer group names for a given topic
* @param brokerListUrl localhost:9092 for instance
* @param topic topic name
* @return
*/
public static Set<String> getAllGroupsForTopic(String brokerListUrl, String topic) {
AdminClient client = AdminClient.createSimplePlaintext(brokerListUrl); try {
List<GroupOverview> allGroups = scala.collection.JavaConversions.seqAsJavaList(client.listAllGroupsFlattened().toSeq());
Set<String> groups = new HashSet<>();
for (GroupOverview overview: allGroups) {
String groupID = overview.groupId();
Map<TopicPartition, Object> offsets = scala.collection.JavaConversions.mapAsJavaMap(client.listGroupOffsets(groupID));
Set<TopicPartition> partitions = offsets.keySet();
for (TopicPartition tp: partitions) {
if (tp.topic().equals(topic)) {
groups.add(groupID);
}
}
}
return groups;
} finally {
client.close();
}
}  

最新文章

  1. SQL注入的分类
  2. 几种循环语句 ,break,continue语句用法
  3. 【转】apache与tomcat的区别
  4. Web Uploader文件上传&amp;&amp;使用webupload有感(黄色部分)
  5. AVL的旋转
  6. Qt中gb2312/GBK的URL编解码函数
  7. Windows Azure应用系列:微软的云部署VPN
  8. DBCP连接池的使用
  9. 关于数据结构的10个面试题(c语言实现)
  10. 使用Git将本地项目或代码上传到GitHub上
  11. OLAP工作的基本概念(结合个人工作)
  12. C语言实现万年历
  13. How tomcat works 读书笔记十二 StandardContext 下
  14. PHP删除目录及目录下所有文件
  15. 解决STM32 I2C接口死锁在BUSY状态的方法讨论
  16. Python面向对象5:类的常用魔术方法
  17. maven构建SSM框架中pom.xml文件配置
  18. 大杂烩 -- equals、hashCode联系与区别
  19. 关于运行python脚本产生__pycache__
  20. linux通过sendmail发送邮件

热门文章

  1. 近期Mac上编译geany软件的总结
  2. C++——虚函数问题小集
  3. Math类的方法应用
  4. Java编程语言下Selenium 鼠标悬停以及右击操作
  5. I want to try to improve myself from today
  6. OSG嵌入QT(QT界面使用Qt Designer编辑)
  7. windows下用C++修改本机IP地址
  8. Node六-模块化
  9. jq监听input-val变化事件
  10. [ SSH框架 ] Struts2框架学习之三(OGNl和ValueStack值栈学习)