五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

你都學(xué)習(xí)這么長時間了,Kafka還不知道?

2021-05-20 16:44 作者:編程大戰(zhàn)  | 我要投稿

你學(xué)習(xí)了那么久的java,你竟然不知道kafka是什么?

沒關(guān)系,今天小編就來帶你一起走進知識的海洋。。。

首先我們來了解什么是kafka

一、?Kafka簡介

????Kafka是最初由Linkedin公司開發(fā),是一個分布式、支持分區(qū)的(partition)、多副本的(replica),基于zookeeper協(xié)調(diào)的分布式消息系統(tǒng),它的最大的特性就是可以實時的處理大量數(shù)據(jù)以滿足各種需求場景:比如基于hadoop的批處理系統(tǒng)、低延遲的實時系統(tǒng)、storm/Spark流式處理引擎,web/nginx日志、訪問日志,消息服務(wù)等等,用scala語言編寫,Linkedin于2010年貢獻給了Apache基金會并成為頂級開源項目。

1、Kafka的特性

  • 高吞吐量、低延遲:kafka每秒可以處理幾十萬條消息,它的延遲最低只有幾毫秒,每個topic可以分多個partition, consumer group 對partition進行consume操作。

  • 可擴展性:kafka集群支持熱擴展

  • 持久性、可靠性:消息被持久化到本地磁盤,并且支持數(shù)據(jù)備份防止數(shù)據(jù)丟失

  • 容錯性:允許集群中節(jié)點失敗(若副本數(shù)量為n,則允許n-1個節(jié)點失?。?/p>

  • 高并發(fā):支持數(shù)千個客戶端同時讀寫

2、Topics和日志

讓我們首先深入了解下Kafka的核心概念:提供一串流式的記錄— topic 。

Topic 就是數(shù)據(jù)主題,是數(shù)據(jù)記錄發(fā)布的地方,可以用來區(qū)分業(yè)務(wù)系統(tǒng)。Kafka中的Topics總是多訂閱者模式,一個topic可以擁有一個或者多個消費者來訂閱它的數(shù)據(jù)。

對于每一個topic, Kafka集群都會維持一個分區(qū)日志,如下所示:

????每個分區(qū)都是有序且順序不可變的記錄集,并且不斷地追加到結(jié)構(gòu)化的commit log文件。分區(qū)中的每一個記錄都會分配一個id號來表示順序,我們稱之為offset,offset用來唯一的標(biāo)識分區(qū)中每一條記錄。

????Kafka 集群保留所有發(fā)布的記錄—無論他們是否已被消費—并通過一個可配置的參數(shù)——保留期限來控制. 舉個例子, 如果保留策略設(shè)置為2天,一條記錄發(fā)布后兩天內(nèi),可以隨時被消費,兩天過后這條記錄會被拋棄并釋放磁盤空間。Kafka的性能和數(shù)據(jù)大小無關(guān),所以長時間存儲數(shù)據(jù)沒有什么問題.

?????事實上,在每一個消費者中唯一保存的元數(shù)據(jù)是offset(偏移量)即消費在log中的位置.偏移量由消費者所控制:通常在讀取記錄后,消費者會以線性的方式增加偏移量,但是實際上,由于這個位置由消費者控制,所以消費者可以采用任何順序來消費記錄。例如,一個消費者可以重置到一個舊的偏移量,從而重新處理過去的數(shù)據(jù);也可以跳過最近的記錄,從"現(xiàn)在"開始消費。

????這些細節(jié)說明Kafka 消費者是非常廉價的—消費者的增加和減少,對集群或者其他消費者沒有多大的影響。比如,你可以使用命令行工具,對一些topic內(nèi)容執(zhí)行 tail操作,并不會影響已存在的消費者消費數(shù)據(jù)。

日志中的 partition(分區(qū))有以下幾個用途。

第一,當(dāng)日志大小超過了單臺服務(wù)器的限制,允許日志進行擴展。每個單獨的分區(qū)都必須受限于主機的文件限制,不過一個主題可能有多個分區(qū),因此可以處理無限量的數(shù)據(jù)。

第二,可以作為并行的單元集,日志的分區(qū)partition (分布)在Kafka集群的服務(wù)器上。每個服務(wù)器在處理數(shù)據(jù)和請求時,共享這些分區(qū)。每一個分區(qū)都會在已配置的服務(wù)器上進行備份,確保容錯性。每個分區(qū)都有一臺 server 作為 “l(fā)eader”,零臺或者多臺server作為 follwers 。leader server 處理一切對 partition (分區(qū))的讀寫請求,而follwers只需被動的同步leader上的數(shù)據(jù)。當(dāng)leader宕機了,followers 中的一臺服務(wù)器會自動成為新的 leader。每臺 server 都會成為某些分區(qū)的 leader 和某些分區(qū)的 follower,因此集群的負載是平衡的。

二、?基于Docker安裝Kafka

1、拉取鏡像

kafka依賴于zookeeper,需要拉取kafka和zookeeper鏡像。

2、啟動zookeeper容器

3、啟動Kafka容器

4、安裝管理界面

訪問http://192.168.89.142:9000 即可。


說了這么多,你們明白了嗎?

什么?

還沒明白?

看視頻啊,你想知道的都在視頻里~


你都學(xué)習(xí)這么長時間了,Kafka還不知道?的評論 (共 條)

分享到微博請遵守國家法律
论坛| 松阳县| 云梦县| 灵武市| 五寨县| 鹰潭市| 江孜县| 嘉峪关市| 都兰县| 于田县| 秦安县| 清涧县| 班戈县| 合川市| 胶州市| 全州县| 鹤庆县| 新丰县| 石台县| 镇雄县| 亚东县| 保山市| 信宜市| 竹山县| 白水县| 宁武县| 新丰县| 邢台县| 宜兰县| 札达县| 乐昌市| 吉木乃县| 贡觉县| 塔河县| 瑞金市| 准格尔旗| 泰来县| 新昌县| 瑞昌市| 新巴尔虎右旗| 金沙县|