kafka环境搭建:

    一、安装配置java-jdk

    (1)kafka需要java环境,安装java-jdk,下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

   (2)安装目录如下:

    (3)环境变量配置:

    

    

    二、下载kafka

    (1)下载kafka2.10-0.9.0.1版本,自带了zookeeper jar包,不用再次下载zookeeper。kafka代理无状态,zookeeper维持集群状态。下载地址:http://mirror.bit.edu.cn/apache/kafka/2.2.0/kafka-2.2.0-src.tgz

    (2)安装目录(不要带空格)如下:

    

    (3)修改zookeeper和kafka配置文件:

    (4)按照配置创建这两个目录

    (5)cmd启动zookeeper:  

  1. cd D:\KAFKA\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1
  2.  
  3. bin\windows\zookeeper-server-start.bat config\zookeeper.properties

    (6)再开cmd启动kafka:

  1. cd D:\KAFKA\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1
  2.  
  3. bin\windows\kafka-server-start.bat config\server.properties

    (7)再开cmd创建topic发送消息:

  1. cd D:\KAFKA\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1
  2.  
  3. # 创建topic
  4. bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic kjTest
  5.  
  6. # 列出topic
  7. bin\windows\kafka-topics.bat --list --zookeeper localhost:2181
  8.  
  9. # 创建生产者
  10. bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic kjTest
  11.  
  12. # 发送消息
  13. this is a test
  14. hello

    (8)再开cmd接收消息:

  1. cd D:\KAFKA\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1\kafka_2.10-0.9.0.1
  2.  
  3. # 创建消费者
  4. bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic kjTest --from-beginning
  5.  
  6. # 消费
  7. this is a test
  8. hello


  golang实现Kfaka消息发送:

      创建main.go:

  1. package main
  2.  
  3. import (
  4. "fmt"
  5.  
  6. "github.com/Shopify/sarama"
  7. "time"
  8. )
  9.  
  10. //消息写入kafka
  11. func main() {
  12. //初始化配置
  13. config := sarama.NewConfig()
  14. config.Producer.RequiredAcks = sarama.WaitForAll
  15. config.Producer.Partitioner = sarama.NewRandomPartitioner
  16. config.Producer.Return.Successes = true
  17. //生产者
  18. client, err := sarama.NewSyncProducer([]string{"127.0.0.1:9092"}, config)
  19. if err != nil {
  20. fmt.Println("producer close,err:", err)
  21. return
  22. }
  23.  
  24. defer client.Close()
  25. var n int = 0
  26.  
  27. for n < 20 {
  28. n++
  29. //创建消息
  30. msg := &sarama.ProducerMessage{}
  31. msg.Topic = "kjTest"
  32. msg.Value = sarama.StringEncoder("this is a good test,hello nola!")
  33. //发送消息
  34. pid, offset, err := client.SendMessage(msg)
  35. if err != nil {
  36. fmt.Println("send message failed,", err)
  37. return
  38. }
  39. fmt.Printf("pid:%v offset:%v\n,", pid, offset)
  40. time.Sleep(10 * time.Millisecond)
  41.  
  42. }
  43.  
  44. }

      消费消息效果:

  参考博友:

    kafka环境搭建:https://www.cnblogs.com/UniqueColor/p/8657319.html

    golang发送消息到kafka:https://www.cnblogs.com/pyyu/p/8371649.html

    kafka入门,概念功能理解:https://blog.csdn.net/tflasd1157/article/details/81985722

windows下golang实现Kfaka消息发送及kafka环境搭建的更多相关文章

  1. Windows下Kettle定时任务执行并发送错误信息邮件

    Windows下Kettle定时任务执行并发送错误信息邮件 1.首先安装JDK 2.配置JDK环境 3.下载并解压PDI(kettle) 目前我用的是版本V7的,可以直接百度搜索下载社区版,企业版收费 ...

  2. windows下《Go Web编程》之Go环境配置和安装

    <Go Web编程>笔者是基于unix下讲述的,作为入门练手,我选择在windows下开发,全程按照目录进行... 一.安装 windows下需要安装MinGW,通过MinGW安装gcc支 ...

  3. 转 windows下安装pycharm并连接Linux的python环境 以及 windows 下notepad ++编辑 linux 的文件

    ######sample 1:windows下安装pycharm并连接Linux的python环境 https://www.cnblogs.com/junxun/p/8287998.html wind ...

  4. Windows下,配置VS Code的Java开发环境

    Windows下,配置VS Code的Java开发环境 前言 最近痴迷于VS Code的开发环境配置,原因就在于它的轻巧和免费,还能当一个非常棒的文本编辑器.如果之前你配置过VS Code并且失败了, ...

  5. 深刻:截获windows的消息并分析实例(DefWindowProc),以WM_NCHITTEST举例(Windows下每一个鼠标消息都是由 WM_NCHITTEST 消息产生的,这个消息的参数包含了鼠标位置的信息)

    1,回调函数工作机制 回调函数由操作系统自动调用,回调函数的返回值当然也是返回给操作系统了. 2,截获操作系统发出的消息,截获到后,将另外一个消息返回给操作系统,已达到欺骗操作系统的目的. 下面还是以 ...

  6. 在windows环境下基于sublime text3的node.js开发环境搭建

    首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...

  7. Windows下用Composer安装Laravel步骤(集成php环境用phpStudy2016版本)

    描述:到官方网站了解并根据自己所需要的版本号安装,所需要的php版本是多少. 中文网站:http://www.golaravel.com/ 官方网站:https://laravel.com/ 其实各自 ...

  8. windows下安装pycharm并连接Linux的python环境

    1. 下载安装Pycharm专业版 具体方法略.Pycharm5激活方法参考http://www.cnblogs.com/snsdzjlz320/p/7110186.html 2. 添加配置连接远程服 ...

  9. windows下通过VNC图形化访问Ubuntu桌面环境

    要在windows下图形化访问Ubuntu或其它Linux系统桌面环境有很多方法,我比较喜欢的是使用VNC服务,需要在Ubuntu下安装vncserver和在windows下安装客户端访问工具. 1. ...

随机推荐

  1. [转] 以 async/await 为例,说明 babel 插件怎么搭

    你一定碰到过这些库 babel-polyfill 项目地址:https://github.com/babel/babel/blob/master/packages/babel-polyfill 通过两 ...

  2. thinkPHP5扩展workerman

    -安装workerman 首先通过 composer 安装 composer require topthink/think-worker -vvv 如果报错: Installation failed, ...

  3. Python 实现auto linlink 连连看

    先上知乎上大神所写: 你看过/写过哪些有意思的代码? 然后别急着看blog,玩一把游戏再说! 看知乎评论,有人说他用了一个下午时间就写出来了. wo kao!!! 我断断续续写了一周的下午才搞定,然后 ...

  4. Promise 返回值

    then 和 catch 中返回 promise,会在这个 promise resolve 或 reject 的时候,把 resolve 或 reject 的结果作为参数传给后面的 then 或 ca ...

  5. JMeter调试参数是否取值正确,调试正则提取的结果(log.info|log.error|print)

    JMeter调试参数是否取值正确,调试正则提取的结果(log.info | log.error | print) Jmeter的log输出控制(jmeter.log) 1 2 log_level.jm ...

  6. 练习html,css,js仿制百度首页

    1.练习目的 练习使用html,scc,js 完成界面样式,用ul标签实现文本框下拉,通过js完成添加列表内容等功能 2.效果 3.程序代码 <!DOCTYPE html> <htm ...

  7. 关闭或启动linux防火墙后,docker启动容器报错

    # docker启动报错   # 解决办法:重建docker0网络恢复   #按照进程名杀死docker进程 [root@localhost mysqlconf]# pkill docker #清空防 ...

  8. ARM的编程模式

    ARM的编程模式 Linux ARM的工作状态 (主要指指令模式) 基本概述 32位架构 指令相关 ARM 32bit Thumb指令 16bit Thumb-2 16||32 bit 兼容 复位后开 ...

  9. [CSAcademy]Find the Tree

    [CSAcademy]Find the Tree 题目大意: 交互题. 有一棵\(n(n\le2000)\)个结点的树,但是你并不知道树的形态.你可以调用\({\rm query}(x,y,z)\)( ...

  10. 无代理处理post非简单请求跨域问题

    express下 在处理纯http服务post请求的时候的跨域问题 即使在服务端先加入 Access-Control-Allow-Origin: *(get即时有效) 会出现 Failed to lo ...