Kafka 1.0版本發布
1.0.0
2017年11月1日發布
源碼下載:
kafka-1.0.0-src.tgz(asc,sha512)
二進制下載:
Scala 2.11 - kafka_2.11-1.0.0.tgz(asc,sha512)
Scala 2.12 - kafka_2.12-1.0.0.tgz(asc,sha512)
我們為多個版本的Scala構建。這只在你使用Scala的時候很重要,你需要為你使用的同一個Scala版本構建一個版本。否則任何版本應該工作(建議2.11)。
Kafka 1.0.0不僅僅是版本號的顛簸。
Apache Kafka項目管理委員會在發布中包含了許多有價值的增強功能。以下是其中的一些摘要:
自從0.10版本推出以來,Streams API已經在包括Pinterest,Rabobank,Zalando和The New York Times在內的Kafka用戶中廣受歡迎。在1.0中,API繼續健康地發展。首先,構建器API已經得到改進(KIP-120)。已經添加了一個新的API來顯示運行時活動任務的狀態(KIP-130)。新的cogroup API使用代碼更少的StateStores和更少的運動部件(KIP-150)來處理分區聚合更容易。通過增強print()和writeAsText()方法(KIP-160),可調試性變得更加容易。如果這還不夠,請查看KIP-138和KIP-161。有關更多流,請查看Apache Kafka Streams 文檔,包括一些有用的新教程視頻。
大規模運營Kafka需要系統保持可觀察性,為了使這一點更容易,我們對指標進行了一些改進。這些太多了,沒有變得乏味,但連接指標已經顯着改善(KIP-196),一些新的健康檢查指標現在暴露(KIP-188),我們現在有一個全球主題和分區計數KIP-168)。查看更多KIP-164和KIP-187。
我們現在支持Java 9,其中包括大幅提高TLS和CRC32C實現速度。現在線上加密的速度會更快,當啟用加密時,這將保持Kafka的快速,並降低計算成本。
為了與安全主題保持一致,KIP-152清除了簡單認證安全層(SASL)認證嘗試中的錯誤處理。以前,一些認證錯誤條件與代理失敗是無法區分的,並且沒有以明確的方式登錄。現在這個更干凈了。
Kafka現在可以更好地容忍磁盤故障。從歷史上看,JBOD存儲配置尚未被推薦,但架構仍然是誘人的:畢竟,為什么不依靠卡夫卡自己的復制機制來防止存儲故障,而不是使用RAID?使用KIP-112,Kafka現在更優雅地處理磁盤故障。JBOD代理中的單個磁盤故障不會導致整個代理停機; 相反,代理將繼續提供正在運行的磁盤上的任何日志文件。
從版本0.11.0開始,冪等生產者(在生產中使用的生產者,當然是我們用來處理的生產者)要求max.in.flight.requests.per.connection是等於一個。任何已經編寫或測試過有線協議的人都可以證明,這就提高了吞吐量。由於KAFKA-5949,現在可以達到五個,放寬了吞吐量的限制。