win10安装kafka,监听9092端口,java调用

1、从Kafka的官网下载Kafka安装包:Apache Kafka

我下的是2.8.0

对应pom.xml配置

复制代码
<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>2.8.0</version>
</dependency>

2、下载后解压到C盘

修改路径,在解压后的config目录下(kafka_2.13-2.8.0\config),

①zookeeper.properties中修改zookeeper的路径:dataDir=C:/kafka/kafka_2.13-2.8.0/zookeeper

②server.properties中修改kafka的路径:log.dirs=C:/kafka/kafka_2.13-2.8.0/kafka-logs

3、启动测试:(在指定文件夹路径中写cmd就可以打开了)

①先启动zookeeper:C:/kafka/kafka_2.13-2.8.0 > bin\windows\zookeeper-server-start.bat config\zookeeper.properties

②再启动kafka:C:/kafka/kafka_2.13-2.8.0>bin\windows\kafka-server-start.bat config\server.properties

ps:若显示"此时不应有 \kafka_2.13-2.8.0\bin\windows\../../config/log4j.properties"的报错,说明路径中有空格,把文件放到别的位置就可以了。

4、查看端口9092是否打开

在命令行中输入netstat -an

5、java代码获取kafka信息

复制代码
public class consumer {
    public static void main(String[] args) {
        Properties props = new Properties();
        props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, "IP地址:9092"); //kafka集群broker列表
        props.put(ConsumerConfig.GROUP_ID_CONFIG, "topic"); //指定topic
        props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringDeserializer");
        props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringDeserializer");

        Consumer<String, String> consumer = new KafkaConsumer<>(props);
        consumer.subscribe(Collections.singletonList("my-topic"));

        while (true) {
            ConsumerRecords<String, String> records = consumer.poll(Duration.ofMillis(100));
            records.forEach(record -> {
                System.out.printf("Offset = %d, Key = %s, Value = %s%n", record.offset(), record.key(), record.value());
            });
        }
    }
}
相关推荐
维天说7 小时前
Agent会听人话,反而更难管
java·开发语言·人工智能
SamDeepThinking7 小时前
if嵌套最好控制在3层以内
java·后端·程序员
边境悍匪7 小时前
蜗牛学苑 Java 智能体学习 Day36|阿里云 OSS 文件上传、Spring 事务、全局异常思维导图复盘
java·学习·阿里云
苏渡苇7 小时前
Spring Insight 里上报 Span 为什么用 JDK HttpClient 而不是 RestTemplate
java·后端·spring·spring cloud·springboot·性能监控
裕晟资质规划7 小时前
军工保密资质二级申报的四个可量化硬条件:条文位置、数值口径与西安配套企业实务要点
java·服务器·网络·数据库·算法
初願致夕霞7 小时前
C/C++传统程序内存分布(代码实测)
java·c语言·c++
掉鱼的猫7 小时前
不只是 Token 流:Solon AI 4.1 的语义化聊天事件
java·openai
她的男孩7 小时前
同一个接口,为什么销售只看到自己的订单?我拆了 681 行数据权限拦截器的源码
java·后端·架构
海宇数据7 小时前
零信任架构实战:基于海宇运营商近3个月平均账单构建自动化分布式租赁网关
人工智能·分布式·架构·自动化
卓怡学长7 小时前
w157基于springboot北部湾地区助农平台
java·spring boot·spring·maven·intellij-idea