文章更新时间:2020/06/07

一、安装JDK

  过程就不过多介绍了...

二、安装Zookeeper

  安装过程可以参考此处~

三、安装并配置kafka

  • Kafka下载地址  http://kafka.apache.org/downloads
  • 解压文件(我的目录是E:\zhanghaoBF\kafka\kafka_2.11-2.3.0   【PS:这里不要在Program Files等文件名之间有空格的目录下,不然一会执行会不识别路径
  • 打开目录E:\zhanghaoBF\kafka\kafka_2.11-2.3.0\config下server.properties文件,把log.dirs修改为【log.dirs=D:\kafka_2.12-0.11.0.0\kafka-logs】,把listeners的配置放开

  一些主要的配置信息如下:

#1、broker实例id 这个是kafka集群区分每个节点的唯一标志符
broker.id=0 #2、监听的端口号
listeners=PLAINTEXT://:9092 #3、消息的存放路径
log.dirs=E:\zhanghaoBF\【完成】SpringBoot整合kafka\kafka_2.11-2.3.0\zhanghaoBFkafkakafka_2.11-2.3.0kafka-logs #4、kafka消息的保留时间,默认为7天即168小时【单位为:小时】
log.retention.hours=168 #5、log文件存放着msg,这里设置的是log文件的最大大小,默认最大为1个G【单位为:byte】
log.segment.bytes=1073741824 #6、kafka链接的zk地址
zookeeper.connect=localhost:2181 #7、kafka链接的超时时间
zookeeper.connection.timeout.ms=6000 #8、默认的分区数量
num.partitions=1

四、启动并测试kafka【以windows操作示例】

启动ZK

启动kafka

  进入kafka文件目录E:\zhanghaoBF\kafka\kafka_2.11-2.3.0,执行以下命令,启动kafka通讯的服务器broker

.\bin\windows\kafka-server-start.bat .\config\server.properties

创建topic

  进入kafka文件目录E:\zhanghaoBF\kafka\kafka_2.11-2.3.0,输入以下命令,创建kafka的消息topics【topic名为testDemo】

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testDemo

  replication-factor:表示在不同的broker中保存几份副本。设置为1表示该topic除了当前leader主机外,在其他brocker上还有1个副本。

  partitions:表示分区数。设置为1表示该topic(同一个brocker上)存在有多少个分区。PS:每个分区的数据是不重复的,用于提高吞吐量。

查看topic

./kafka-topics.bat --list --zookeeper localhost:2181  ##查看localhost:2181上存在的topic信息

启动生产者

进入目录kafka文件目录E:\zhanghaoBF\kafka\kafka_2.11-2.3.0,输入以下命令,创建Producer

##此命令为修改命令行窗口的名称,此命令可不执行,直接执行下面的命令去启动生产者
title producer
kafka-console-producer.bat --broker-list localhost:9092 --topic testDemo

启动完成后可在窗口中输入消息内容:

启动消费者

进入目录kafka文件目录E:\zhanghaoBF\kafka\kafka_2.11-2.3.0,输入以下命令,创建consumer

##此命令为修改命令行窗口的名称,此命令可不执行,直接执行下面的命令去启动消费者
title consumer
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic testDemo --from-beginning

启动完成后可在窗口中输入消息内容:

PS:某些博文里会推荐使用

kafka-console-consumer.bat --zookeeper localhost:2181 --topic testDemo

  这个命令来启动消费者,这里说明一下,低版本的kafka是用这个命令来启动消费者并进行消息消费的,由于本文使用的kafka版本较高,所以才用的上面那个命令行进行消费者启动,并消费信息。

kafka学习(四)kafka安装与命令行调用的更多相关文章

  1. 【分布式】ZooKeeper学习之一:安装及命令行使用

    ZooKeeper学习之一:安装及命令行使用 一直都想着好好学一学分布式系统,但是这拖延症晚期也是没得治了,所以干脆强迫自己来写一个系列博客,从zk的安装使用.客户端调用.涉及到的分布式原理.选举过程 ...

  2. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  3. mac安装GNU命令行工具

    mac安装GNU命令行工具 2.添加的repo     tap home/dupes        brew install coreutils  binutils  diffutils  ed -- ...

  4. 【Mac】Mac OS X 安装GNU命令行工具

    macos的很多用户都是做it相关的人,类unix系统带来了很多方面,尤其是经常和linux打交道的人. 但是作为经常使用linux 命令行的人发现macos中的命令行工具很多都是bsd工具,跟lin ...

  5. Django之win7下安装与命令行工具

    Django之win7下安装与命令行工具 下载安装 pip3 install django 注意:自动添加环境变量 测试是否安装成功 1.输入python 2.输入import django 3.输入 ...

  6. 你使用 Web 平台安装程序命令行工具

    你使用 Web 平台安装程序命令行工具 获取的软件由其所有者授权给你.Microsoft 未授予你第三方软件的任何权利.已成功加载主源: https://go.microsoft.com/?linki ...

  7. NodeJS 安装cnpm命令行工具

    在安装之前,请确保已安装Git和NodeJS. cmd机内命令窗口,输入以下命令: git config --system http.sslcainfo /bin/curl-ca-bundle.crt ...

  8. Symfony2 通过命令行调用控制器

    由于系统需求,需要写一个无限循环的控制器,那么既然有一个无限循环的控制器,那么就需要有一个开关,不可能直接通过route来开启吧.当然要使用高级一点的方法啊. 那就是使用控制台通过命令行(comman ...

  9. Maven-11: 从命令行调用插件

    mvn -h显示mvn命令帮助: usage: mvn [options] [<goal(s)>] [<phase(s)>] Options: -am,--also-make ...

随机推荐

  1. kolla搭建ironic裸机服务

    参考链接: https://www.lijiawang.org/posts/kolla-ironic.html 准备ageng镜像: [root@control01 ~]# pip install d ...

  2. vmware 虚拟机共享 windows 目录

    1.vmware 配置: 2.虚拟机进行配置: 虚拟机安装vmware-tools 3.虚拟机中挂载sr0(cdrom): [root@bogon ~]# mount /dev/sr0 /mnt/ m ...

  3. SQL语句组合查询 UNION

    1.使用UNION UNION 可以涉及编写多条SELECT语句,首先看看单条语句 第一条SELECT语句把Illinois,Indiana,Michigan等州的缩写传递给IN子句,检索出这些州的所 ...

  4. pandas - 异常值处理

    异常值概念:是指那些远离正常值的观测,即“不合群”观测.异常值的出现一般是人为的记录错误或者是设备的故障等,异常值的出现会对模型的创建和预测产生 严重的后果.当然异常值也不一定是坏事,有些情况下,通过 ...

  5. Java并发---concurrent包

    一.包的结构层次 其中包含了两个子包atomic和locks,另外字concurrent下的阻塞队列以及executor,这些就是concurrent包中的精华.而这些类的实现主要是依赖于volati ...

  6. 6. 二十不惑,ObjectMapper使用也不再迷惑

    一滴水,用显微镜看,也是一个大世界.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习.关注公众 ...

  7. Lombok插件有望被Intellij IDEA收编以改善兼容性问题

    1. 前言 最近两个版本的Intellij IDEA没有办法使用lombok插件了,这种问题已经出现了多次,导致胖哥依然使用2020.1的旧版本.其实很多人和我一样也回滚到了旧版本.我一直认为是lom ...

  8. 都2020年了,还再问GET和POST的区别?【深度好文】

    最近看了一些同学的面经,发现无论什么技术岗位,还是会问到 get 和 post 的区别,而搜索出来的答案并不能让我们装得一手好逼,那就让我们从 HTTP 报文的角度来撸一波,从而搞明白他们的区别. 一 ...

  9. 数据去重Distinct,IEqualityComparer,IEquatable

    很多情况下我们查询数据需要去重重复数据,下面就记录三个去重的方法. Distinct 最基本的去重形式,直接查询出数据后使用Distinct方法进行字段去重. var strList = new Li ...

  10. 使用Android的硬件缩放技术优化执行效率

    Unity3D研究院之使用Android的硬件缩放技术优化执行效率 http://www.xuanyusong.com/archives/3205 Android中GLSurfaceView在横竖屏切 ...