zoukankan      html  css  js  c++  java
  • SpringBoot整合kafka(安装)

    项目路径:https://github.com/zhaopeng01/springboot-study/tree/master/study_14

    序言

    Kafka 是一种高吞吐的分布式发布订阅消息系统,能够替代传统的消息队列用于解耦合数据处理,缓存未处理消息等,同时具有更高的吞吐率,支持分区、多副本、冗余,因此被广泛用于大规模消息数据处理应用
    在整合过程中注意SpringBoot版本是否与kafka版本兼容

    安装kafka

    在这里介绍的是mac安装,win兄弟们可以在下面地址下载

    下载地址: http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.12-2.0.0.tgz
    安装

    brew install kafka
    

      


    安装会依赖zookeeper。
    注意:安装目录:/usr/local/Cellar/kafka/0.10.2.0
    安装的配置文件位置

    /usr/local/etc/kafka/server.properties
    /usr/local/etc/kafka/zookeeper.properties
    

      


    启动zookeeper

    zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties
    

      

    启动kafka

    kafka-server-start /usr/local/etc/kafka/server.properties
    

      

    创建topic

    让我们使用单个分区和只有一个副本创建一个名为“test”的主题

    kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
    

      注意:docker下面命令后面加上.sh,如kafka-topics.sh ;另外localhost用宿主机的ip地址


    查看创建的topic

    我们现在可以看到该主题,如果我们运行list topic命令:

    kafka-topics --list --zookeeper localhost:2181
    

      


    发送一些消息

    Kafka提供了一个命令行客户端,它将从文件或标准输入接收输入,并将其作为消息发送到Kafka集群。默认情况下,每行都将作为单独的消息发送。
    运行生产者,然后在控制台中键入一些消息发送到服务器。

    kafka-console-producer --broker-list localhost:9092 --topic test
    

      


    消费消息

    Kafka还有一个命令行消费者,将消息转储到标准输出。

    kafka-console-consumer --bootstrap-server localhost:9092 --topic test --from-beginning
    

      


    然后也可以根据自己的业务逻辑需求去自定义一些其他的异常类,或者结合自己的逻辑去改造一些
    删除topic

    这里还是删除上面的test

    删除kafka相关的数据目录

    数据目录查看kafka配置:

    server.properties -> log.dirs=/var/kafka/log/tmp
    su rm -r /var/kafka/log/tmp/test*
    

      


    删除kafka topic

    /home/kafka/bin/kafka-topics.sh --delete --zookeeper HadoopMaster:2181/kafka --topic test
    

      


    删除zookeeper相关的路径

    打开zookeeper client

    /home/ZooKeeper/bin/zkCli.sh
    

      


    执行下面的命令
    把test替换成你要删除的topic
    #删除topic test的consumer group,如果有消费记录的话

    rmr /kafka/consumers/test-group
    rmr /kafka/config/topics/test
    rmr /kafka/brokers/topics/test
    rmr /kafka/admin/delete_topics/test
    

      


    重启zookeeper和kafka可以用下面命令查看相关的topic还在不在:

    /home/kafka/bin/kafka-topics.sh --list --zookeeper HadoopMaster:2181/kafka
    

      


    好的到这里本篇文章就先到此了,如果那里有不合适的地方还请大家多多指教,写这篇博的目的主要就是为了方便自己以后的一个回忆和朋友学习时的一个参考,希望为大家可以带来帮助 ~ ~&

    虚心的去学习,自信的去工作~
    ---------------------
    作者:Strugglein
    来源:CSDN
    原文:https://blog.csdn.net/Strugglein/article/details/86736753
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    python学习笔记之九:模块和包
    python学习笔记之八:迭代器和生成器
    python学习笔记之七:魔法方法,属性
    python学习笔记之六:更加抽象
    python学习笔记之五:抽象
    python学习笔记之四:条件,循环和其他语句
    python学习笔记之三:字典,当索引不好用时
    python学习笔记之二:使用字符串
    yolo自己的数据集中LabelImg的安装出现No module named 'libs.resources'错误
    django2 rest_framework + vue.js + mysql5.6 实现增删改查
  • 原文地址:https://www.cnblogs.com/telwanggs/p/10858071.html
Copyright © 2011-2022 走看看