• kafka创建topic,生产和消费指定topic消息


    启动zookeeper和Kafka之后,进入kafka目录(安装/启动kafka参考前面一章:https://www.cnblogs.com/cici20166/p/9425613.html)

    1.创建Topic

      1)运行命令: ./bin/kafka-topics.sh --create --zookeeper zk1:2181 --replication-factor 2 --partitions 3 --topic hello

        replication-factor:副本数,包含主节点,不能大于机器数
        partitions:分区数,可以大于机器数
        同一台机器不能包含两个相同的partition:hello-1/hello-1
        但是可以有两个不同的分区:hello-2/hello-3
    

      图示为创建成功:

      

    2.查看Topic

      1)运行命令查看所有的topic: ./bin/kafka-topics.sh --list --zookeeper zk1:2181

      结果如下图,表示共有test和test1两个topic:

      

    3.用Kafka的console-producer在topic hello 生产消息

      新建终端窗口,到kafka目录,运行命令:./bin/kafka-console-producer.sh --broker-list zk1:9092 --topic hello

      然后输入想要产生的消息内容(如 hello world),回车:

    4.用Kafka的console-consumer 消费topic hello的消息

      新建终端窗口,到kafka目录,

      运行命令:./bin/kafka-console-consumer.sh --bootstrap-server zk1:9092 --topic hello --from-beginning

      (9092是kafka单机启动的端口;--bootstrap-server 新旧kafka版本不一样,这个是新版本的命令)

      

      ps. 1)若producer 和 consumer 两个窗口同时打开,在producer输入信息,consumer会立即消费信息并打印在终端
    {{uploading-image-892112.png(uploading...)}}
    {{uploading-image-443812.png(uploading...)}}

        2)新开一个终端,去消费同一个topic,刚刚已经消费过的消息还会被新终端继续消费。也就是说,消息被消费过后不会立即被删除。(不同的groupid消费重新计算offset)          

    5.kafka-manager可以看到上述操作记录产生的影响

    新增了一个topic

    三个kafka-broker

    具体topic详情




  • 相关阅读:
    管理员必备的Linux系统监控工具
    kafka入门:简介、使用场景、设计原理、主要配置及集群搭建(转)
    RedHat linux配置yum本地资源
    RedHat Linux RHEL6配置本地YUM源
    c语言中的fgets函数
    sprintf()函数的用法
    spring boot整合JWT例子
    spring boot 自定义过滤器链
    (转)ArrayList和LinkedList的几种循环遍历方式及性能对比分析
    (转)Springboot 中filter 注入对象
  • 原文地址:https://www.cnblogs.com/xiaohan970121/p/12361049.html
Copyright © 2020-2023  润新知