天天看点

查看kafka运行状态_kafka学习笔记(三)quick star

(一)启动kafka环境

  kafka要求jdk1.8以上,并且启动kafka之前需要启动zookeeper,这里直接使用kafka自带的zookeeper,但是官方说不久后kafka将不再需要zookeeper。

  启动zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties

  启动kafka:bin/kafka-server-start.sh config/server.properties

(二)创建topic

  kafka是一个分布式事件流平台,允许在多台计算机上读,写,存储和处理事件,事件被存储在topic中。topic类似于文件系统中的文件夹,事件类似于文件夹中的文件。所以在创建事件之前需要创建topic

  创建topic:bin/kafka-topics.sh --create --topic myTopic --bootstrap-server localhost:9092  kafka-topics.sh命令用于操作topic,它包括很多参数,--create表示创建  --topic myTopic 表示topic名字为myTopic,bootstrap-server localhost:9092表示服务器地址为localhost:9092。

查看kafka运行状态_kafka学习笔记(三)quick star

  成功创建topic之后,服务器会打印新建topic的名称,配置信息,这里为{}以及分片信息等

查看kafka运行状态_kafka学习笔记(三)quick star

  使用--describe参数可以查看topic信息

查看kafka运行状态_kafka学习笔记(三)quick star

(三)写入event

  kafka客户端通过网络与kafka代理进行通信,以写入或读取event,一旦收到event,kafka将以持久和容错的方式存储事件,用户可自行决定存储时间。

  运行kafak producer客户端并输入evnet  bin/kafka-console-producer.sh --topic myTopic --bootstrap-server localhost:9092

查看kafka运行状态_kafka学习笔记(三)quick star

  目前producer 客户端是处于可持续输入event的状态,若要退出可按Ctrl+C

(四)读取event

  运行kafka consumer客户端并输入bin/kafka-console-consumer.sh --topic myTopic --from-beginning --bootstrap-server localhost:9092,其中--from-beginning参数表示从开始读取event 

查看kafka运行状态_kafka学习笔记(三)quick star

  若没有--from-beginning参数,则默认从此时开始新入的event开始读取(注意在自己测试的时候,启动consumer客户端之后要等一会再去producer客户端写数据,可能这边没起起来,那边写了数据但是这边看不到)  

查看kafka运行状态_kafka学习笔记(三)quick star

(五)其他(后面新开详细介绍)

  可使用kafka Connect导入导出自己的数据

  可使用kafka Streams处理event

(六)终止kafka环境

  都可以用Ctrl+C去终止,若想要删除本地环境中的所有数据,可以使用 

rm -rf /tmp/kafka-logs /tmp/zookeeper