免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
kafka筆記1

Kafka是一款基于發(fā)布和訂閱的消息系統(tǒng)。一般被稱為分布式提交日志或分布式流平臺。

Kafka系統(tǒng)是按照一定的順序持久化保存的,可以按需讀取。

Kafka的數據單元被稱為消息。類似于數據庫中表的一行記錄,消息由字節(jié)組成,所以沒有特別的格式和含義。

消息有一個可選的元數據,就是鍵,鍵也是一個字節(jié)數組。當消息以一種可控的方式寫入分區(qū)時,會用到鍵,最簡單的方式就是為鍵生成一個散列值,然后使用散列值對主題的分區(qū)屬進行取模。這樣可以保證具有相同鍵的消息總是會寫到相同的分區(qū)。

批次時一組消息,這些消息屬于同一個主題和分區(qū),將消息分批次傳輸可以減少網絡開銷。

消息模式有很多選項,比如json,xml,但Kafka的開發(fā)者喜歡使用Apache Avro。

Kafka的消息通過主題進行分類,主題就好比數據庫中的表?;蛘呶募到y(tǒng)中的文件夾。

主題還可以分成若干個分區(qū),消息以追加方式寫入分區(qū),按照先入先出的順序被消費,因此無法在整個主題范圍內保持順序,但可以保證在單個分區(qū)內的順序。

Kafka通過分區(qū)實現(xiàn)數據冗余和伸縮性,分區(qū)可分布在不同的服務器上,以此來提供比單個服務器更強大的性能。

通常使用流來描述Kafka的數據,流是一組從生產者到消費者的數據。Kafka以實時的方式處理數據,這叫流失處理,通常與批量處理(Hadoop)做區(qū)別。

Kafka的客戶端就是Kafka的用戶,他們被分為兩種:生產者和消費者。除此之外還有其他高級客戶端API——用于數據集成的Kafka Connect API和用于流失處理的Kafka streams.這些高級客戶端API使用生產者和消費者作為內部組件,提供了更高級的功能。

生產者創(chuàng)建消息,一般一個消息會被發(fā)布到一個特定的主題上,生產者默認會把消息均衡地分布到主題的所有分區(qū),這通常是由消息鍵和分區(qū)器來實現(xiàn)。

消費者讀取消息,消費者訂閱一個或多個主題,并按照消息生成的順序消費它們。消費者通過檢查消息的偏移量來區(qū)分已經讀過的消息。偏移量是另一種元數據,它是一個不斷遞增的整數值。在創(chuàng)建消息時,Kafka會把它添加到消息里,在給定分區(qū)里,每個消息的偏移量都是唯一的。

消費者把每個分區(qū)最后讀取的偏移量保存到zookeeper或Kafka上,如果消費者關閉或者重啟,它的讀取狀態(tài)不好丟失。

消費者是消費者群組的一部分,一般會有多個消費者共同讀取一個主題,群組保證每個分區(qū)只被一個消費者使用。

一個獨立的Kafka服務器稱為一個broker,broker接收來自生產者的消息,為消息設置偏移量,并提交消息到磁盤保存。broker為消費者提供服務,對讀取分區(qū)的請求作出響應,返回提交到磁盤上的消息。

broker是集群的組成部分,每個集群都會有一個broker充當集群控制器角色(自動選舉),控制器負責管理工作。在集群中,一個分區(qū)從屬于一個broker,該broker被稱為分區(qū)的首領,一個分區(qū)可以復制到多個broker,這種復制機制為分區(qū)提供了消息冗余。

保留消息時Kafka的一個重要特性,默認的保留策略時這樣的:要么保留一段時間,要么保留一定的字節(jié)數。在任一時刻,達到其中一個標準,消息就會被刪除。

Kafka可以無縫支持多個生產者,也可以支持多個消費者。

Kafka有五個使用場景:

1.跟蹤用戶的活動。

2.傳遞消息。

3.度量指標和日志記錄。

4.提交日志。

5.流處理。

來源:http://www.icode9.com/content-4-108701.html
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Kafka權威指南
真的,關于 Kafka 入門看這一篇就夠了
java開發(fā)之開源平臺Kafka知識總結分享
Kafka/Metaq設計思想學習筆記
Kafka系列1:Kafka概況
生產者和消費者
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服