5-2:Kafka入门

Kafka简介

原本的kafka只是一个处理消息队列的技术,但随着功能不断增加,不断综合,成为了一个分布式的流媒体平台

  • Kafka是一个分布式的流媒体平台
    • 应用:消息系统日志收集、用户行为追踪流式处理
  • Kafka特点
    • 高吞吐量消息持久化高可靠性高扩展性
      -他把数据存到硬盘里,同时保持高性能(读取性能的高度决定于硬盘的读取方式:顺序读取,高性能);分布式集群部署,因此可靠,
  • Kafka术语
    • Broker(kafka集群中的每一个服务器)、Zookeeper(管理集群,kafka内置中有,可以单独下载一个管理器)
      消息队列的方式有两种:一种是点对点,另一种是发布订阅方式,生产者将消息放到某个位置(指定的topic上),多个消费者可以同时对其进行读取,或单个读取。
    • Topic(文件夹,消息的位置)、Partition(对topic进行分区)、Offset(每个分区从前往后一次追加数据,消息在分区内存放的索引)
    • Leader Replica(主副本,对数据做备份,当从分区获取数据时,主副本可以做相应,但随从副本不会) 、Follower Replica(随从副本,当主副本出现问题时,随从副本中的某一个会成为主副本)

官方网站:kafka官方网站

下载安装kafka

kafka不分系统,windows和linux都有相应的命令,在一个下载包里
5-2:Kafka入门_第1张图片
5-2:Kafka入门_第2张图片
下载步骤解压缩即可

配置kafka

5-2:Kafka入门_第3张图片
5-2:Kafka入门_第4张图片
5-2:Kafka入门_第5张图片

kafka常用命令介绍

http://kafka.apache.org/documentation/

启动zookeeper

5-2:Kafka入门_第6张图片
指定某个配置文件去启动,注意文件的路径位置。

启动kafka

cd 到对应目录下,用配置文件,启动kafka-server-start.bat
5-2:Kafka入门_第7张图片
启动后,data文件夹下就有数据了

使用kafka,要启动命令行,使用kafka的命令工具

进入到包含命令行的工具下,创建主题(topic,要把消息放到主题上,主题代表一个位置,也代表一个消息的类别)
利用工具:kafka-topics.bat,创建主题,指定在哪个服务器上创建主题;创建多少个副本,几个分区;创建主题的名字叫test
kafka默认的端口是9092;
在这里插入图片描述
查看kafka所有的主题:

在这里插入图片描述
往主题上发送消息,是生产者发送消息
kafka-console-producer.bat --broker-list localhost:9092 --topic test
在这里插入图片描述
通过消费者窗口(再创建一个窗口,注意要进到kafka相应的目录底下)
kafka-console-consumer.bat --bootstrp-server loclahost:9092 --topic test – from beginning
消费者从消息队列中读取数据,从头开始读
在这里插入图片描述
5-2:Kafka入门_第8张图片

我们一般利用java代码,去使用kafka

你可能感兴趣的:(kafka,java,分布式)