Kafka簡(jiǎn)介

kafka1.png

? 消息系統(tǒng)負(fù)責(zé)將數(shù)據(jù)從一個(gè)應(yīng)用程序傳輸?shù)搅硪粋€(gè)應(yīng)用程序填帽,因此應(yīng)用程序可以專注于數(shù)據(jù),但不擔(dān)心如何共享它。 分布式消息傳遞基于可靠消息隊(duì)列的概念悔政。 消息在客戶端應(yīng)用程序和消息傳遞系統(tǒng)之間異步排隊(duì)翁涤。 有兩種類(lèi)型的消息模式可用 - 一種是點(diǎn)對(duì)點(diǎn)桥言,另一種是發(fā)布 - 訂閱(pub-sub)消息系統(tǒng)。

Kafka概述

關(guān)于kafka

? Apache Kafka是一個(gè)分布式發(fā)布 - 訂閱消息系統(tǒng)和一個(gè)強(qiáng)大的隊(duì)列葵礼,可以處理大量的數(shù)據(jù)号阿,并使您能夠?qū)⑾囊粋€(gè)端點(diǎn)傳遞到另一個(gè)端點(diǎn)。 Kafka適合離線和在線消息消費(fèi)鸳粉。 Kafka消息保留在磁盤(pán)上扔涧,并在群集內(nèi)復(fù)制以防止數(shù)據(jù)丟失。 Kafka構(gòu)建在ZooKeeper同步服務(wù)之上届谈。 它與Apache Storm和Spark非常好地集成枯夜,用于實(shí)時(shí)流式數(shù)據(jù)分析。

? Kafka是一個(gè)統(tǒng)一的平臺(tái)艰山,用于處理所有實(shí)時(shí)數(shù)據(jù)Feed湖雹。 Kafka支持低延遲消息傳遞,并在出現(xiàn)機(jī)器故障時(shí)提供對(duì)容錯(cuò)的保證曙搬。 它具有處理大量不同消費(fèi)者的能力摔吏。 Kafka非常快纵装,執(zhí)行2百萬(wàn)寫(xiě)/秒征讲。 Kafka將所有數(shù)據(jù)保存到磁盤(pán),這實(shí)質(zhì)上意味著所有寫(xiě)入都會(huì)進(jìn)入操作系統(tǒng)(RAM)的頁(yè)面緩存橡娄。 這使得將數(shù)據(jù)從頁(yè)面緩存?zhèn)鬏數(shù)骄W(wǎng)絡(luò)套接字非常有效诗箍。

好處

  1. 可靠性:kafka是分布式,分區(qū)挽唉,復(fù)制的容錯(cuò)的滤祖。
  2. 可擴(kuò)展性:kafka消息傳遞系統(tǒng)輕松縮放才避,無(wú)需停機(jī)。
  3. 耐用性:kafka使用“分布式提交日志”氨距,消息會(huì)盡可能快地保留在磁盤(pán)上桑逝,因此它是持久的。
  4. 性能:kafka對(duì)于發(fā)布和訂閱消息都是具有高吞吐量的的俏让。即時(shí)存儲(chǔ)了許多TB的消息楞遏,它也保持穩(wěn)定的性能。

kafka非呈孜簦快寡喝,并保證零停機(jī)和零數(shù)據(jù)丟失。

kafka術(shù)語(yǔ)

kafka2.jpg
  1. Topics(主題):屬于特定類(lèi)別的消息流稱為主題勒奇。數(shù)據(jù)存儲(chǔ)在主題中预鬓。主題被拆分成分區(qū)。對(duì)于每個(gè)主題赊颠,kafka保存一個(gè)分區(qū)的數(shù)據(jù)格二。每個(gè)這樣的分區(qū)包含不可變有序序列的消息。分區(qū)被實(shí)現(xiàn)為具有相等大小的一組分段文件竣蹦。
  2. Partition(分區(qū)):主題可能有許多分區(qū)顶猜,因此它可以處理任意數(shù)量的數(shù)據(jù),分區(qū)布置在不同的服務(wù)器上痘括,負(fù)載均衡长窄,打破性能瓶頸。
  3. Partition offset(分區(qū)偏移):每個(gè)分區(qū)消息具有稱為“offset”的唯一序列標(biāo)識(shí)纲菌。
  4. Replicas of partition(分區(qū)備份):副本只是一個(gè)分區(qū)的“備份”挠日。副本從不讀取或?qū)懭霐?shù)據(jù)。他們用于防止數(shù)據(jù)丟失翰舌。
  5. Brokers(經(jīng)紀(jì)人):(1)代理是負(fù)責(zé)維護(hù)發(fā)布數(shù)據(jù)的簡(jiǎn)單系統(tǒng)嚣潜。每個(gè)代理中的每個(gè)主題可以具有0個(gè)或多個(gè)分區(qū)。假設(shè)灶芝,如果在一個(gè)主題和N個(gè)代理中有N個(gè)分區(qū)郑原,每個(gè)代理將有一個(gè)分區(qū)唉韭。(2)假設(shè)在一個(gè)主題中有N個(gè)分區(qū)并且多于N個(gè)代理(n+m)夜涕,則每一個(gè)N代理將在具有一個(gè)分區(qū),并且下一個(gè)M代理將不具有用于該特定主題的任何分區(qū)属愤。(3)假設(shè)在一個(gè)主題中有N個(gè)分區(qū)并且小于N個(gè)代理(n-m)女器,每個(gè)代理將在他們之間具有一個(gè)或多個(gè)分區(qū)共享。由于代理之間的負(fù)載分布不相等住诸,不推薦使用此方案驾胆。
  6. kafka cluster(kafka集群):kafka有多個(gè)代理被稱為kafka集群涣澡。可以擴(kuò)展kafka集群丧诺,無(wú)需停機(jī)入桂。這些集群用于管理消息數(shù)據(jù)的持久性和復(fù)制。
  7. Producers(生產(chǎn)者):生產(chǎn)者是發(fā)送給一個(gè)或多個(gè)kafka主題的消息的發(fā)布者驳阎。生產(chǎn)者向kafka經(jīng)紀(jì)人發(fā)送數(shù)據(jù)抗愁。每當(dāng)生產(chǎn)者將消息發(fā)布給代理時(shí),代理只需將消息附加到最后一段文件呵晚。實(shí)際上蜘腌,該消息將被附加到分區(qū)。生產(chǎn)者還可以向他們選擇的分區(qū)發(fā)送消息饵隙。
  8. Consumers(消費(fèi)者):消費(fèi)者從經(jīng)紀(jì)人處讀取數(shù)據(jù)撮珠。消費(fèi)者訂閱一個(gè)或多個(gè)主題,并通過(guò)從代理中提取數(shù)據(jù)來(lái)使用已發(fā)布的消息金矛。
  9. Leader(領(lǐng)導(dǎo)者):負(fù)責(zé)給定分區(qū)的所有讀取和寫(xiě)入的節(jié)點(diǎn)芯急。每個(gè)分區(qū)都有一個(gè)服務(wù)器充當(dāng)Leader。
  10. Follower(追隨者):跟隨領(lǐng)導(dǎo)者指令的節(jié)點(diǎn)被稱為Follower驶俊。如果領(lǐng)導(dǎo)失敗志于,一個(gè)追隨者將自動(dòng)成為新的領(lǐng)導(dǎo)者。跟隨者作為正常的消費(fèi)者废睦,拉取消息并更新自己的數(shù)據(jù)存儲(chǔ)伺绽。
    kafka1.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市嗜湃,隨后出現(xiàn)的幾起案子奈应,更是在濱河造成了極大的恐慌,老刑警劉巖购披,帶你破解...
    沈念sama閱讀 219,366評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杖挣,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡刚陡,警方通過(guò)查閱死者的電腦和手機(jī)惩妇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)筐乳,“玉大人歌殃,你說(shuō)我怎么就攤上這事◎疲” “怎么了氓皱?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,689評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我波材,道長(zhǎng)股淡,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,925評(píng)論 1 295
  • 正文 為了忘掉前任廷区,我火速辦了婚禮唯灵,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘隙轻。我一直安慰自己早敬,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布大脉。 她就那樣靜靜地躺著搞监,像睡著了一般。 火紅的嫁衣襯著肌膚如雪镰矿。 梳的紋絲不亂的頭發(fā)上琐驴,一...
    開(kāi)封第一講書(shū)人閱讀 51,727評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音秤标,去河邊找鬼绝淡。 笑死,一個(gè)胖子當(dāng)著我的面吹牛苍姜,可吹牛的內(nèi)容都是我干的牢酵。 我是一名探鬼主播,決...
    沈念sama閱讀 40,447評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼衙猪,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼馍乙!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起垫释,我...
    開(kāi)封第一講書(shū)人閱讀 39,349評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤丝格,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后棵譬,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體显蝌,經(jīng)...
    沈念sama閱讀 45,820評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評(píng)論 3 337
  • 正文 我和宋清朗相戀三年订咸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了曼尊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,127評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡脏嚷,死狀恐怖骆撇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情然眼,我是刑警寧澤艾船,帶...
    沈念sama閱讀 35,812評(píng)論 5 346
  • 正文 年R本政府宣布葵腹,位于F島的核電站高每,受9級(jí)特大地震影響屿岂,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鲸匿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評(píng)論 3 331
  • 文/蒙蒙 一爷怀、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧带欢,春花似錦运授、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,017評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至渡贾,卻和暖如春逗宜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背空骚。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,142評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工纺讲, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人囤屹。 一個(gè)月前我還...
    沈念sama閱讀 48,388評(píng)論 3 373
  • 正文 我出身青樓熬甚,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親肋坚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子乡括,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • kafka簡(jiǎn)介 翻譯自Kafka官網(wǎng) Introduction:http://kafka.apache.org/i...
    Hi_world_DF閱讀 723評(píng)論 2 4
  • Apache kafka是一個(gè)分布式流平臺(tái)。這到底是什么意思智厌? 我們認(rèn)為流平臺(tái)具有三個(gè)關(guān)鍵功能: 它允許發(fā)布和訂閱...
    狼牙戰(zhàn)士閱讀 666評(píng)論 0 0
  • 英文原文 介紹 一個(gè)流處理平臺(tái)有三個(gè)關(guān)鍵功能: 發(fā)布訂閱記錄流粟判,和消息隊(duì)列和企業(yè)消息系統(tǒng)一樣; 以容錯(cuò)持久...
    Anor9閱讀 352評(píng)論 0 0
  • 原文:InfoQ 作者 郭俊 簡(jiǎn)介 Kafka是一種分布式的峦剔,基于發(fā)布/訂閱的消息系統(tǒng)档礁。使用Scala編寫(xiě)...
    小小少年Boy閱讀 2,216評(píng)論 1 30
  • Kafka是分布式流平臺(tái)。 一個(gè)流平臺(tái)有3個(gè)主要特征: 發(fā)布和訂閱消息流吝沫,這一點(diǎn)與傳統(tǒng)的消息隊(duì)列相似呻澜。 以容災(zāi)持久...
    牛初九閱讀 631評(píng)論 0 1