消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的

這篇文章給大家介紹消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供荷塘網(wǎng)站建設(shè)、荷塘做網(wǎng)站、荷塘網(wǎng)站設(shè)計、荷塘網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、荷塘企業(yè)網(wǎng)站模板建站服務(wù),10余年荷塘做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

Kafka是一種高吞吐量的 分布式 發(fā)布訂閱消息系統(tǒng),它可以處理消費(fèi)者規(guī)模的網(wǎng)站中所有動作流數(shù)據(jù)。Kafka的目的是通過 Hadoop 并行加載機(jī)制統(tǒng)一線上和離線消息處理,并通過 集群 提供實(shí)時消息。內(nèi)容較基礎(chǔ),主要圍繞kafka的體系架構(gòu)和功能展開。

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的 

正文開始之前,我們先了解一下Kafka中涉及的相關(guān)術(shù)語:

1、Broker——Kafka集群包含一個或多個服務(wù)器,這種服務(wù)器被稱為broker ;

2、Topic——每條發(fā)布到Kafka集群的消息都有一個類別,這個類別被稱為Topic。(物理上不同Topic的消息分開存儲,邏輯上一個Topic的消息雖然保存于一個或多個broker上但用戶只需指定消息的Topic即可生產(chǎn)或消費(fèi)數(shù)據(jù)而不必關(guān)心數(shù)據(jù)存于何處)

3、Partition——Partition是物理上的概念,每個Topic包含一個或多個Partition.

4、Producer——負(fù)責(zé)發(fā)布消息到Kafka broker

5、Consumer——消息消費(fèi)者,向Kafka broker讀取消息的客戶端。

6、Consumer Group——每個Consumer屬于一個特定的Consumer Group(可為每個Consumer指定group name,若不指定group name則屬于默認(rèn)的group)。

Kafka的topic可以看做是一個記錄流 ("/orders", "/user-signups"),每個topic都有一個日志,它存儲在磁盤上。每個topic又被分成多個partition(區(qū)),每個partition在存儲層面是append log文件,任何發(fā)布到partition的消息都會被直接追加到日志文件的尾部,Kafka Producer API用于生成數(shù)據(jù)記錄流,Kafka Consumer API用于使用Kafka的記錄流。

Kafka架構(gòu):Topic、Partition、Producer、Consumer

通常,一個普通的工作流程是Kafka的producer向topic寫入消息,consumer從topic中讀取消息。topic與日志相關(guān)聯(lián),日志是存儲在磁盤上的數(shù)據(jù)結(jié)構(gòu),Kafka將producer的記錄附加到topic日志的末尾。topic日志由分布在多個文件上的許多分區(qū)組成,這些文件可以分布在多個Kafka集群節(jié)點(diǎn)上。Kafka在集群的不同節(jié)點(diǎn)上分發(fā)topic日志分區(qū),以實(shí)現(xiàn)具有水平可伸縮性的高性能。Spreading 分區(qū)有助于快速寫入數(shù)據(jù),Kafka將分區(qū)復(fù)制到許多節(jié)點(diǎn)以提供故障轉(zhuǎn)移。

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的 

如果多個producer和consumer同時讀取和寫入相同的Kafka主題日志,Kafka如何擴(kuò)展?首先,Kafka本身的寫入速度很快,順序?qū)懭胛募到y(tǒng)本身就不需要太多時間;其次,在現(xiàn)代的快速驅(qū)動器上,Kafka可以輕松地每秒寫入700 MB或更多字節(jié)的數(shù)據(jù)。

集群部署和測試

Kafka使用ZooKeeper管理集群,ZooKeeper用于協(xié)調(diào)服務(wù)器或集群拓?fù)?,ZooKeeper是配置信息的一致性文件系統(tǒng)。你可以選擇Kafka自帶的Zookeeper,也可以選擇單獨(dú)部署,一臺Linux主機(jī)開放三個端口即可構(gòu)建一個簡單的偽ZooKeeper集群。

ZooKeeper可以將拓?fù)涓陌l(fā)送到Kafka,如果集群中的某臺服務(wù)器宕機(jī)或者某個topic被添加、刪除,集群中的每個節(jié)點(diǎn)都可以知道新服務(wù)器何時加入,ZooKeeper提供Kafka Cluster配置的同步視圖。Kafka和ZooKeeper的搭建都需要java環(huán)境,對于jdk的下載安裝本文不過多贅述,可以自行網(wǎng)上查詢,二者的安裝包也可以在Apache官網(wǎng)自行下載。自建Zookeeper集群的配置過程如下:

創(chuàng)建目錄 ZooKeeper:mkdir zookeeper

拷貝最少三個實(shí)例,進(jìn)入ZooKeeper目錄,其他實(shí)例進(jìn)行同樣的操作:

創(chuàng)建目錄zkdata、zkdatalog

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的

進(jìn)入conf目錄,

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的

拷貝zoo_sample.cfg 為zoo.cfg,詳細(xì)配置如下:

Java代碼  

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的

使用Kafka自帶的ZooKeeper集群:

查看配置文件 

進(jìn)入Kafka的config的目錄:

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的 

 先建立zk集群,直接使用Kafka自帶的ZooKeeper建立zk集群,修改zookeeper.properties文件:

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的

Kafka服務(wù)器

Kafka集群由多個Kafka Brokers組成。每個Kafka Broker都有一個唯一的ID(編號)。Kafka Brokers包含主題日志分區(qū),如果希望獲得故障處理能力,需要保證至少有三到五個服務(wù)器,Kafka集群最大可同時存在10,100或1,000個服務(wù)器。Kafka將每個partition數(shù)據(jù)復(fù)制到多個server上,任何一個partition有一個leader和多個follower(可以沒有);備份的個數(shù)可以通過broker配置文件來設(shè)定.當(dāng)leader失效時,需在followers中選取出新的leader,可能此時follower落后于leader,因此需要選擇一個"up-to-date"的follower。

例如,如果在AWS中運(yùn)行kafka集群,其中一個Kafka Broker發(fā)生故障,作為ISR(同步副本)的Kafka Broker可以迅速提供數(shù)據(jù)。

消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的 

請注意,對于如何設(shè)置Kafka集群本身并沒有硬性規(guī)定。例如,可以在單個AZ中設(shè)置整個集群,以便使用AWS增強(qiáng)型網(wǎng)絡(luò)和放置組獲得更高的吞吐量,然后使用Mirror Maker將集群鏡像到同一區(qū)域中的熱災(zāi)備AZ。

關(guān)于消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網(wǎng)頁題目:消息中間件Kafka+Zookeeper集群的概念、部署和實(shí)踐是怎樣的
文章鏈接:http://m.kartarina.com/article34/pgosse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站維護(hù)、移動網(wǎng)站建設(shè)動態(tài)網(wǎng)站、企業(yè)網(wǎng)站制作、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
主站蜘蛛池模板: 毛片亚洲AV无码精品国产午夜| 亚洲精品无码久久久影院相关影片| 精品乱码一区内射人妻无码 | 国内精品人妻无码久久久影院| V一区无码内射国产| 亚洲国产一二三精品无码| 亚洲av无码日韩av无码网站冲| 日韩人妻无码一区二区三区久久99 | 亚洲成A∨人片天堂网无码| 久久无码av三级| 精品久久久无码中文字幕边打电话 | 人妻精品无码一区二区三区| 自拍偷在线精品自拍偷无码专区| 亚洲AV无码一区二区三区久久精品 | 国产品无码一区二区三区在线| 国产精品无码日韩欧| 无码人妻精品一区二| 亚洲中文无码线在线观看| 国产成年无码AV片在线韩国| 久久美利坚合众国AV无码| 亚洲成a∧人片在线观看无码| 国产AV巨作情欲放纵无码| 精品久久久久久无码人妻蜜桃| 久久人午夜亚洲精品无码区| 无码国产色欲XXXXX视频| 无码日韩人妻AV一区二区三区 | 免费一区二区无码东京热| 精品亚洲成α人无码成α在线观看| 日韩人妻无码精品久久免费一| 久久久久亚洲AV无码专区网站| 97无码免费人妻超级碰碰碰碰| 国产仑乱无码内谢| 无码日本精品XXXXXXXXX| 亚洲a∨无码精品色午夜| 国产成年无码久久久久下载| 青青爽无码视频在线观看| 亚洲av永久中文无码精品| 久久精品无码一区二区三区免费| 西西大胆无码视频免费| 无码人妻精品一二三区免费| 国产精品无码无片在线观看3D|