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源碼了。是不是很簡單。