zookeeper和kafka是什么?

zookeeper是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。主要有以下几个模块:

  • producer:生产者。

  • consumer:消费者。

  • topic: 消息以topic为类别记录,Kafka将消息种子(Feed)分门别类,每一类的消息称之为一个主题(Topic)。

  • broker:以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker;消费者可以订阅一个或多个主题(topic),并从Broker拉数据,从而消费这些已发布的消息。

  • 每个消息(也叫作record记录,也被称为消息)是由一个key,一个value和时间戳构成。

下载并安装zookeeper

zookeeper-3.4.11传送门

kafka依赖zookeeper,所以要先安装zookeeper

  • 下载zookeeper后,解压并打开D:\Progam Files\zookeeper-3.4.11\conf\,把zoo_sample.cfg重命名成zoo.cfg,修改dataDir和dataLogDir路径
dataDir=D:\data\zookeeper
dataLogDir=D:\data\logs\zookeeper
  • 添加环境变量(不加当然也行,你开心就好)
    ZOOKEEPER_HOME:D:\Progam Files\zookeeper-3.4.11
    在Path中添加: %ZOOKEEPER_HOME%\bin;

  • 打开cmd输入zkserver开启zookeeper服务

下载并安装kafka

kafka_2.11-1.0.0传送门

  • 下载kafka并解压后,打开D:\Progam Files\kafka_2.11-1.0.0\config,修改server.properties中的log.dir为log.dirs=D:\data\logs\kafka

  • 运行kafka
    打开D:\Progam Files\kafka_2.11-1.0.0\bin\windows,在windows文件夹下面shift右键打开cmd输入以下命令开启kafka

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

  • 创建一个Topic

在bin\windows目录下打开cmd创建一个Topic

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

  • 创建一个producer,依然是在bin\windows下

kafka_2.11-1.0.0\bin\windows>kafka-console-producer.bat --broker-list localhost:9092 --topic test1

  • 运行 consumer,依然是在bin\windows下

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

现在消费者已经可以收到生产者的消息了,至此kafka的windows环境搭建完成,linux环境配置几乎差不多,小伙伴们可自己研究一下,我可要下班了