- 需求:
在原在水力发电厂在线监测VC++6.0软件中实现kafka C++客户端,将原始波形信号及计算指标点通过消息avro序列化发送给大数据平台侧kafka集群。
C++搭建kafka客户端用了我半个月的时间,avro序列化用了半个月的时间。相信好多人也是苦于没有系统性的参考耽误了好多工夫,我写这篇文档希望能给别人一些辅助。
- 开发准备工作:
本地装了一套kafka的环境:
序号 | 名称 | 备注 | 下载链接 |
1 | JDK | Java开发环境 | https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html |
2 |
Zookeeper |
分布式应用程序协调服务 |
http://mirror.bit.edu.cn/apache/zookeeper/ |
3 |
Kafka |
Kafka开发环境 |
http://kafka.apache.org/downloads.html |
- 操作流程:
- 下载或拷贝JDK安装包:根据计算机系统类型下载对应位数的JDK版本,本人使用的是jdk1.8.0_73版本。安装程序逐步执行,没有特殊要求;
- 系统环境变量:右键计算机->属性,在左边点击“高级系统设置”,点击 高级->环境变量,这是点击下面的系统环境变量-> 新建(系统环境变量)。变量名设置为:JAVA_HOME。变量值设置为:JDK的安装路径(注:bin的上一级路径);
- 设置PATH:还是在系统环境变量设置界面,找到系统变量名为Path的变量,双击修改。在变量值尾部添加括号内的内容[;C:\Program Files (x86)\Java\jdk1.8.0_73\bin](注:若添加前变量值尾部有‘;’则输入内容无需填写‘;’。即保证JDK环境与之前环境使用;分割开);
- 验证:进入windows终端[窗口+R],输入命令:java -version。若出现类似下列JDK版本信息则证明安装JDK成功;
- zookeeper部署
- kafka运行依赖于zookeeper,因此在安装kafka前需将zookeeper安装完成。运行时同样先运行zookeeper再运行kafka;
- 解压zookeeper压缩包:将zookeeper解包后放在[D:\]路径下;
- 重命名zoo配置文件:将zookeeper\ conf\zoo_sample.cfg重命名为zoo.cfg;
- 修改zoo.cfg配置文件:将原文件中dataDir及dataLogDir所在行修改为:
dataDir=D:\data\logs\zookeeper
dataLogDir=D:\data\logs\zookeeper (若原配置文件中无此行则将此行写在dataDir下面)
- 系统环境变量:右键计算机->属性,在左边点击“高级系统设置”,点击 高级->环境变量,这是点击下面的系统环境变量-> 新建(系统环境变量)。变量名设置为:ZOOKEEPER_HOME。变量值设置为:D:\zookeeper-3.4.14;
- 设置PATH:还是在系统环境变量设置界面,找到系统变量名为Path的变量,双击修改。在变量值尾部添加括号内的内容[;%ZOOKEEPER_HOME%\bin;](注:若添加前变量值尾部有‘;’则输入内容无需填写‘;’。即保证zookeeper环境与之前环境使用;分割开);
- 运行zookeeper&#