Kafka是一种高吞吐量的分布式发布订阅消息系统

1、优点:
① 通过磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。
② 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息。
③ 支持通过Kafka服务器和消费机集群来分区消息。
④ 支持Hadoop并行数据加载。

2、基本概念:

① Broker:Kafka集群包含的一个或多个服务器
② Topic:每条发布到Kafka集群的消息都有一个类别主题。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)
③ Partition:分区,每个Topic包含一个或多个Partition
④ Producer:负责发布消息到Kafka broker
⑤ Consumer:消息消费者,向Kafka broker读取消息的客户端
⑥ Consumer Group:每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)

3、环境准备:

① Windows 7 64位旗舰版

② Zookeeper文件一份zookeeper-3.4.13.tar.gz(下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/),下载完毕后解压至D:\Kafka

③ Kafka文件一份kafka_2.12-2.1.1.tgz(下载地址:http://kafka.apache.org/downloads.html),下载完毕后解压至D:\Kafka

4、配置设定:

① 环境变量的系统变量中添加ZOOKEEPER_HOME=D:\Kafka\zookeeper-3.4.11,系统变量path中追加;%ZOOKEEPER_HOME%\bin

② D:\Kafka\zookeeper-3.4.13\conf目录中,zoo_sample.cfg文件改名为zoo.cfg

③ zoo.cfg文件中12行的dataDir=/tmp/zookeeper,修改为:dataDir=D:\\Kafka\\zookeeper-3.4.13\\tmp

④ D:\Kafka\kafka_2.12-2.1.1\config目录中,找到server.properties文件,60行的log.dirs=/tmp/kafka-logs,修改为:log.dirs=D:\\Kafka\\kafka_2.12-2.1.1\\kafka-logs

5、测试运行:

① 启动Zookeeper

在D:\Kafka\zookeeper-3.4.13\bin目录下,找到zkServer.cmd文件,双击执行,看到如下提示,说明Zookeeper正常启动

注意:启动后不要关闭窗口

② 启动Kafka

在D:\Kafka\kafka_2.12-2.1.1目录下,shift+鼠标右键,找到"在此处打开命令窗口",输入:

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

看到如下提示,说明Kafka正常启动

注意:启动后不要关闭窗口

③ 创建及查看Topic

在D:\Kafka\kafka_2.12-2.1.1目录下,shift+鼠标右键,找到"在此处打开命令窗口",输入:

.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

看到如下提示,说明创建成功

想查看创建过的Topic,可以继续输入:

.\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181

看到如下提示,即列出创建过的Topic列表

④ 创建生产者

在D:\Kafka\kafka_2.12-2.1.1目录下,shift+鼠标右键,找到"在此处打开命令窗口",输入:

.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test

看到如下提示,说明等待生产

⑤ 创建消费者

在D:\Kafka\kafka_2.12-2.1.1目录下,shift+鼠标右键,找到"在此处打开命令窗口",输入:

.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning

看到如下提示,说明等待消费

⑥ 在生产者窗口中输入内容模拟生产,可以在消费者窗口中看到内容

【原】无脑操作:Windows下搭建Kafka运行环境的更多相关文章

  1. Windows下搭建kafka运行环境

    完整解决方案请参考: Setting Up and Running Apache Kafka on Windows OS   在环境搭建过程中遇到两个问题,在这里先列出来,以方便查询: 1. \Jav ...

  2. (转)Windows上搭建Kafka运行环境

    转自:<Windows上搭建Kafka运行环境> 完整解决方案请参考: Setting Up and Running Apache Kafka on Windows OS   在环境搭建过 ...

  3. [转]Windows上搭建Kafka运行环境

    [转]http://www.cnblogs.com/alvingofast/p/kafka_deployment_on_windows.html Windows上搭建Kafka运行环境   完整解决方 ...

  4. Windows上搭建Kafka运行环境

    完整解决方案请参考: Setting Up and Running Apache Kafka on Windows OS   在环境搭建过程中遇到两个问题,在这里先列出来,以方便查询: 1. \Jav ...

  5. kafka之一:Windows上搭建Kafka运行环境

    搭建环境 1. 安装JDK 1.1 安装文件:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-213315 ...

  6. Windows7下搭建Django运行环境

    一直都是在Linux环境下搭建django的运行环境,开学因为需要叫前端的同学帮忙修改模板,所以需要在Windows下搭建起运行环境,想来PHP倒是有不少集成开发环境,Python倒是少的可怜…只在w ...

  7. Windows上搭建Flume运行环境

    1.如果没有安装过Java环境,则需首先安装JDK. 可参考<Windows上搭建Kafka运行环境>中的搭建环境安装JDK部分 2.官方下载Flume(当前为apache-flume-1 ...

  8. Windows下搭建Git开发环境

    Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...

  9. [转载]在Windows下搭建Android开发环境

    http://jingyan.baidu.com/article/bea41d437a41b6b4c51be6c1.html 在Windows下搭建Android开发环境 | 浏览:30780 | 更 ...

随机推荐

  1. 基于支付系统真实场景的分布式事务解决方案效果演示: http://www.iqiyi.com/w_19rsveqlhh.html

    基于支付系统真实场景的分布式事务解决方案效果演示:http://www.iqiyi.com/w_19rsveqlhh.html

  2. linux下c编程 基础

    1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用gdb调试技术 6. 熟悉makefile基本原理 ...

  3. CentOS6.7 mysql5.6.33修改数据文件位置

    问题:mysql存放的数据文件,分区容量较小,目前已经满,导致mysql连接不上, 解决方案: 1.删除分区里一个不需要用的数据,如:日志文件等(解决不了根本问题) 2.对某个磁盘扩容 3.修改数据存 ...

  4. Linux时间子系统之七:定时器的应用--msleep(),hrtimer_nanosleep()

    我们已经在前面几章介绍了低分辨率定时器和高精度定时器的实现原理,内核为了方便其它子系统,在时间子系统中提供了一些用于延时或调度的API,例如msleep,hrtimer_nanosleep等等,这些A ...

  5. Spring Data Jpa 实现分页(Spring MVC+easyui)

    spring data jpa很好的对dao层进行了封装,这篇文章主要来写的是实现easyui datagird数据分页,由于各个UI参数不大一样,所以如果使用的是其他UI,得稍作修改.需要说明的是我 ...

  6. Java面试题之对static的理解

    1.静态变量 类型说明符是static.2.静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在 静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间(在程序整个 ...

  7. Java与Kotlin, 哪个是开发安卓应用的首选语言?

    Java是很多开发者创建安卓应用的首选语言.但它在 Android 界的领导地位正受到各种新语言的挑战,Kotlin就是其一.虽然Kotlin最近才开始受到热捧,但有为数不少的人相信 Kotlin 在 ...

  8. Django—models相关操作

    一.在django后台admin管理页面添加自己增加的表结构 通过终端命令:python3 manage.py makemigrations, python3 manage.py migrate 我们 ...

  9. uuid.go

    package uuid import "time" func GenerateUUID() uint64 {     return uint64(time.Now().UnixN ...

  10. 1.1 为什么要使用lambda 表达式

    第1章 lambda 表达式 1.1 为什么要使用lambda 表达式 1.2 lambda 表达式的语法 1.3 函数式接口 1.4 方法引用 1.5 构造器引用 1.6 变量作用域 1.7 默认方 ...