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 ...
随机推荐
- 【翻译】Promises/A+规范
目录 介绍 译文 1. 术语(Terminology) 2. 要求(Requirements) 2.1 Promise状态 2.2 then方法 2.3 Promise解析程序 3. 注释 3.1 p ...
- golang目录
基础 golang安装及vscode编辑器配置 golang基础结构 golang基础数据类型 golang复合数据结构 goalng函数 golang方法 golang接口 golang并发 gol ...
- 服务器基本配置(ubuntu)
服务器基本配置(ubuntu) 学习目标: 修改初始服务器名字(ubuntu 16.04 ) 修改初始服务器名字(ubuntu 18.04 ) ubuntu换源 更改默认python版本 安装软件出现 ...
- 10、Entity Framework Core 3.1入门教程-执行原生SQL
本文章是根据 微软MVP solenovex(杨旭)老师的视频教程编写而来,再加上自己的一些理解. 视频教程地址:https://www.bilibili.com/video/BV1xa4y1v7rR ...
- Java后台服务慢优化杂谈
Java后台服务慢优化杂谈 前言 你是否遇到过这样的场景,当我们点击页面某个按钮后,页面一直loading,要等待好几分钟才出结果的画面,有时直接502或504,作为一个后台开发,看到自己开发的系统是 ...
- idea中展开折叠的文件夹
1. 按键盘中的向右箭头 选中要展开的目录,按下键盘的向右箭头,这时候会展开一层当前目录.如果要展开所有,一直按住向右箭头不放. 左箭头则是折叠 2. 按数字键盘中的 * 选中要展开的目录,按下数字键 ...
- 记录Unity的优化tip(不断更新)
大概记录遇到的可以优化的点.1.Mesh.UploadMeshData:预先把网格送到GPU unity是这样的,它对一个网格,先把它搞到内存,然后在第一次渲染它时把它送到GPU.但送GPU经常是个瓶 ...
- 3D人物移动控制实现方案
要控制3D人物在3D世界中进行正常的移动.转向,一般有两种情况: 1.使用人物动画控制人物 的移动 转向 2.使用脚本控制人物 的移动.转向 对方案一: Animator 组件勾选上 Apply Ro ...
- OpenResty 作者章亦春访谈实录
[软件简介] OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器.它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项. 通过众多 ...
- 【译】Object Storage on CRAQ 上篇
摘要 大型存储系统通常会在许多可能出故障的组件上进行数据复制和数据分区,从而保证可靠性和可扩展性.但是许多商业部署系统为了实现更高的可用性和吞吐量,牺牲了强一致性,特别是那些实时交互系统. 本论文介绍 ...