Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)成为broker。无论是kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息。
今天我们先从搭建Kafka源码环境入手。
1.gradle安装
2.下载apache kafka源代码
3.用gradle构建产生IDEA工程文件
执行如下命令:
经过几分钟的编译后,出现Build Successful表示源码编译下载成功。
生成IDEA工程文件如下:
5.IDEA中查看源码工程
6.Kafka启动时,参数设置
7、在编译运行时可能出现的问题
错误: -source 1.6 中不支持 diamond 运算符
解决办法是:使用jdk1.7来编译,
这样就可以启动调试Kafka源码了。是不是很简单。