博主最近在学习有关kafka的配置安装以及在spring的集成使用。但网上关于kafka的配置参考资料基本都是于linux下的配置,于是博主在整理了相关windows下kafka的配置记录在博客里。由于是简单配置所以在这里只建了一个topic以及一个producer和两个consumer。

关于kafka具体是什么以及他的设计原理使用场景等等请看上篇博客,转自大佬。传送门:http://www.cnblogs.com/wdfordream/p/7324975.html

在官网上下载 zookeeper和kafka(我下的版本kafka_2.11-0.11.0.0,这个版本中bin目录下有windows目录),注意不要下载源码包(名字中带有src),否则启动的时候会报错。

1、配置好jdk环境

2、解压zookeeper到指定目录,找到解压后目录中conf文件夹中zoo_sample - 副本.cfg文件,复制在conf中改名为zoo.cfg。在bin文件夹中打开zkServer.bat启动zookeeper。

至此,zookeeper启动完成。

3、解压kafka到指定目录。查看kafka根目录中config文件夹下server.properties,确认其中关于zookeeper的连接端口和zookeep中zoo.cfg的端口一致。

  3.1、启动kafka

  在cmd中进入kafka根目录。输入以下命令:

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

  

  kafka启动成功

  3.2、创建topic

  在cmd中进入kafka\bin\windows目录,输入以下命令:

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

  

  创建成功

  3.3、创建kafka producer

  在cmd中进入kafka\bin\windows目录,输入以下命令:

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

  注意这里的端口和server.properties的端口号一致。

  

  3.4创建consumer

  在cmd中进入kafka\bin\windows目录,输入以下命令:

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

  

  以同样的方式创建另一个consumer。

4、测试

在producer中输入一句话并回车,可以在两个consumer中得到相关信息。

5、其他相关命令

查看已建立的topics:kafka-topics.bat --list --zookeeper localhost:2181

查看每个节点信息  :kafka-topics.bat --describe --zookeeper localhost:2181 --topic my-replicated-topic

6、问题整理

6.1、kafka启动时报异常Caused by:java.lang.OutOfMemoryError:Map failed

在这里博主的办法是将kafka-server-run.bat里的参数set KAFKA_HEAP_OPTS=-Xmx512M -Xms512M改为256M,如果有更好的解决办法谢谢大家能告诉我。

6.2、kafka启动时报异常Caused by: java.nio.file.FileSystemException: \tmp\kafka-logs\topic.alarmMatchFace-0\00000000000000009163.log -> \tmp\kafka-logs\topic.alarmMatchFace-0\00000000000000009163.log.deleted: 另一个程序正在使用此文件,进程无法访问。

主要是因为tmp/kafka-logs文件的日志达到了1G且未被清理。由于这样的错误是在kafka服务关闭后重启kafka服务引起的,博主暂无什么好的解决方法,每次把tmp下的kafka-logs文件夹删除,再启动kafka服务就不会报错了,希望各位大大如果有好的方法能告知我一下,谢谢啦。

kafka在windows下的安装和配置的更多相关文章

  1. Windows下pry安装和配置

    Windows下pry安装和配置 pry是一个增强型的交互式命令行工具,比irb强大. 有自动完成功能,自动缩进,有颜色.有更强大的调试功能. pry 安装很简单. 在终端输入: gem instal ...

  2. windows下redis安装和配置

    windows下redis安装和配置 redis介绍 Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序. Redis有三个主要特点,使它优越于其它键值数 ...

  3. solr在windows下的安装及配置

    solr在windows下的安装及配置 首先,solr是基于Java开发的,所以使用的话需要先进行java环境的配置,在Java环境配置好之后就可以去http://www.apache.org/dyn ...

  4. Lua在Windows下的安装、配置、运行

    Lua在Windows下的安装.配置.运行 本文链接:https://blog.csdn.net/ChinarCSDN/article/details/78667262 展开 # Windows下安装 ...

  5. windows下手动安装和配置xamarin

    安装xamarin xamarin官方给出了两种安装方式,自动安装和手动安装. 自动安装比较简单,到http://xamarin.com/download下载xamarininstaller.exe ...

  6. QT在windows下的安装与配置

    先了解Qt: Qt一直以来,分为商业.开源两个版本,商业版本为用户提供了二级制的动态库,直接安装既可以使用,但是需要花钱购买license,而开源版本则遵守GPL协议,提供了源码,用户需要自行编译,才 ...

  7. windows下nginx安装、配置与使用(转载)

    目前国内各大门户网站已经部署了Nginx,如新浪.网易.腾讯等:国内几个重要的视频分享网站也部署了Nginx,如六房间.酷6等.新近发现Nginx 技术在国内日趋火热,越来越多的网站开始部署Nginx ...

  8. Python在windows下的安装与配置

    安装python 文件准备: A. python安装文件:我用的是python-3.4.3.amd64.msi: 安装很简单,直接双击点下一步即可: 配置环境变量,在windows系统变量中找到pat ...

  9. windows下nginx安装、配置与使用

    目前国内各大门户网站已经部署了Nginx,如新浪.网易.腾讯等:国内几个重要的视频分享网站也部署了Nginx,如六房间.酷6等.新近发现Nginx 技术在国内日趋火热,越来越多的网站开始部署Nginx ...

随机推荐

  1. memcache与mysql的连接

    MySQL官方在5.6版本以上有一个与memcache连接的插件,名字叫做innodb_memcache. 1),没有安装过MySQL的,可以在CMAKE的时候加入:-DWITH_INNODB_MEM ...

  2. javac不是内部命令和外部命令

    因为系统不能识别javac命令,或者是因为你没有正确安装JDK. 在你的JDK所在的安装目录,在DOS环境里,比如是:C:\java>set path=c:\java1.4.1\bin 然后在c ...

  3. Linux常见命令(三)

    今天我们来介绍第三个命令:pwd. Linux中用 pwd 命令来查看”当前工作目录“的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来 ...

  4. MinGW(GCC)编译DLL文件

    这两天用CB(Code::Blocks)写个小程序,要编译出DLL供VB(6)使用.CB使用mingw-gcc作为编译器,在库文件的产出上跟VC.VS之类的IDE略有不同. 由于C语言的基础知识不是太 ...

  5. Javasript 正则匹配任意字符

    今天在写Js匹配任意字符的时候发现使用.不好使,当输入内容有回车的时候就会失效. 后来上网查,发现js的任意字符不包括\n. 本来想写一个trim后长度为10的正则验证,最后使用[\s|\S]来代替任 ...

  6. 进击的新版NavMesh系统:看我飞檐走壁

    0x00 前言 unity5.6作为Unity5最后的一个版本,的确起到了一个承上启下的作用.除了上一篇文章<进击的AssetBundles和它的工具们>中提到的AssetBundles- ...

  7. POJ 3126 math(BFS)

    Prime Path Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21581   Accepted: 11986 Desc ...

  8. 浅谈web服务器的编写之http协议

    本书是介绍怎么编写一个Web服务器,而Web服务器是基于HTTP(HyperText Transfer Protocol)协议实现的,所以要实现一个Web服务器就必须了解HTTP协议,本章主要介绍HT ...

  9. Oozie时出现Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure?

    不多说,直接上干货! 问题详情 [hadoop@bigdatamaster oozie--cdh5.5.4]$ bin/ooziedb.sh create -sqlfile oozie.sql -ru ...

  10. 从零开始搭建Jenkins+Docker自动化集成环境

    本文只简单标记下大概的步骤,具体搭建各个部分的细节,还请自行搜索.第一.二部分只是对Jenkins和Docker的简单介绍,熟悉的同学请直接跳到第三部分. 一.关于Jenkins Jenkins简介 ...