kafka学习(四)kafka安装与命令行调用
文章更新时间: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安装与命令行调用的更多相关文章
- 【分布式】ZooKeeper学习之一:安装及命令行使用
ZooKeeper学习之一:安装及命令行使用 一直都想着好好学一学分布式系统,但是这拖延症晚期也是没得治了,所以干脆强迫自己来写一个系列博客,从zk的安装使用.客户端调用.涉及到的分布式原理.选举过程 ...
- Linux学习心得之 Linux下命令行Android开发环境的搭建
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...
- mac安装GNU命令行工具
mac安装GNU命令行工具 2.添加的repo tap home/dupes brew install coreutils binutils diffutils ed -- ...
- 【Mac】Mac OS X 安装GNU命令行工具
macos的很多用户都是做it相关的人,类unix系统带来了很多方面,尤其是经常和linux打交道的人. 但是作为经常使用linux 命令行的人发现macos中的命令行工具很多都是bsd工具,跟lin ...
- Django之win7下安装与命令行工具
Django之win7下安装与命令行工具 下载安装 pip3 install django 注意:自动添加环境变量 测试是否安装成功 1.输入python 2.输入import django 3.输入 ...
- 你使用 Web 平台安装程序命令行工具
你使用 Web 平台安装程序命令行工具 获取的软件由其所有者授权给你.Microsoft 未授予你第三方软件的任何权利.已成功加载主源: https://go.microsoft.com/?linki ...
- NodeJS 安装cnpm命令行工具
在安装之前,请确保已安装Git和NodeJS. cmd机内命令窗口,输入以下命令: git config --system http.sslcainfo /bin/curl-ca-bundle.crt ...
- Symfony2 通过命令行调用控制器
由于系统需求,需要写一个无限循环的控制器,那么既然有一个无限循环的控制器,那么就需要有一个开关,不可能直接通过route来开启吧.当然要使用高级一点的方法啊. 那就是使用控制台通过命令行(comman ...
- Maven-11: 从命令行调用插件
mvn -h显示mvn命令帮助: usage: mvn [options] [<goal(s)>] [<phase(s)>] Options: -am,--also-make ...
随机推荐
- kolla搭建ironic裸机服务
参考链接: https://www.lijiawang.org/posts/kolla-ironic.html 准备ageng镜像: [root@control01 ~]# pip install d ...
- vmware 虚拟机共享 windows 目录
1.vmware 配置: 2.虚拟机进行配置: 虚拟机安装vmware-tools 3.虚拟机中挂载sr0(cdrom): [root@bogon ~]# mount /dev/sr0 /mnt/ m ...
- SQL语句组合查询 UNION
1.使用UNION UNION 可以涉及编写多条SELECT语句,首先看看单条语句 第一条SELECT语句把Illinois,Indiana,Michigan等州的缩写传递给IN子句,检索出这些州的所 ...
- pandas - 异常值处理
异常值概念:是指那些远离正常值的观测,即“不合群”观测.异常值的出现一般是人为的记录错误或者是设备的故障等,异常值的出现会对模型的创建和预测产生 严重的后果.当然异常值也不一定是坏事,有些情况下,通过 ...
- Java并发---concurrent包
一.包的结构层次 其中包含了两个子包atomic和locks,另外字concurrent下的阻塞队列以及executor,这些就是concurrent包中的精华.而这些类的实现主要是依赖于volati ...
- 6. 二十不惑,ObjectMapper使用也不再迷惑
一滴水,用显微镜看,也是一个大世界.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习.关注公众 ...
- Lombok插件有望被Intellij IDEA收编以改善兼容性问题
1. 前言 最近两个版本的Intellij IDEA没有办法使用lombok插件了,这种问题已经出现了多次,导致胖哥依然使用2020.1的旧版本.其实很多人和我一样也回滚到了旧版本.我一直认为是lom ...
- 都2020年了,还再问GET和POST的区别?【深度好文】
最近看了一些同学的面经,发现无论什么技术岗位,还是会问到 get 和 post 的区别,而搜索出来的答案并不能让我们装得一手好逼,那就让我们从 HTTP 报文的角度来撸一波,从而搞明白他们的区别. 一 ...
- 数据去重Distinct,IEqualityComparer,IEquatable
很多情况下我们查询数据需要去重重复数据,下面就记录三个去重的方法. Distinct 最基本的去重形式,直接查询出数据后使用Distinct方法进行字段去重. var strList = new Li ...
- 使用Android的硬件缩放技术优化执行效率
Unity3D研究院之使用Android的硬件缩放技术优化执行效率 http://www.xuanyusong.com/archives/3205 Android中GLSurfaceView在横竖屏切 ...