欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

kafka深入研究之路(2)kafka簡介與專業(yè)術(shù)語解釋說明-創(chuàng)新互聯(lián)

目錄:
1、kafka簡介 什么是kafka? 設(shè)計(jì)目標(biāo)是什么?
2、kafka的優(yōu)缺點(diǎn)
3、kafka中專業(yè)術(shù)語解釋說明

創(chuàng)新互聯(lián)是專業(yè)的阜陽網(wǎng)站建設(shè)公司,阜陽接單;提供成都網(wǎng)站建設(shè)、成都做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行阜陽網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

官方網(wǎng)站: http://kafka.apache.org/intro
kafka中文教程 http://orchome.com/kafka/index

1/ kafka 簡介
Kafka是最初由Linkedin公司開發(fā),是一個(gè)分布式、分區(qū)的、多副本的、多訂閱者,基于zookeeper協(xié)調(diào)的分布式日志系統(tǒng)(也可以當(dāng)做MQ系統(tǒng)),常見可以用于web/nginx日志、訪問日志,消息服務(wù)等等,Linkedin于2010年貢獻(xiàn)給了Apache基金會(huì)并成為頂級(jí)開源項(xiàng)目。//發(fā)展近十年的項(xiàng)目 目前很成熟了

主要應(yīng)用場(chǎng)景是:日志收集系統(tǒng)和消息系統(tǒng)。

Kafka主要設(shè)計(jì)目標(biāo)如下:
(1)以時(shí)間復(fù)雜度為O(1)的方式提供消息持久化能力,即使對(duì)TB級(jí)以上數(shù)據(jù)也能保證常數(shù)時(shí)間的訪問性能。
(2)高吞吐率。即使在非常廉價(jià)的商用機(jī)器上也能做到單機(jī)支持每秒100K條消息的傳輸。
(3)支持Kafka Server間的消息分區(qū),及分布式消費(fèi),同時(shí)保證每個(gè)partition內(nèi)的消息順序傳輸。
(4)同時(shí)支持離線數(shù)據(jù)處理和實(shí)時(shí)數(shù)據(jù)處理。
(5)Scale out:支持在線水平擴(kuò)展

Kafka就是一種發(fā)布-訂閱模式 在發(fā)布-訂閱消息系統(tǒng)中,消息被持久化到一個(gè)topic中。與點(diǎn)對(duì)點(diǎn)消息系統(tǒng)不同的是,消費(fèi)者可以訂閱一個(gè)或多個(gè)topic,消費(fèi)者可以消費(fèi)該topic中所有的數(shù)據(jù),同一條數(shù)據(jù)可以被多個(gè)消費(fèi)者消費(fèi),數(shù)據(jù)被消費(fèi)后不會(huì)立馬刪除。在發(fā)布-訂閱消息系統(tǒng)中,消息的生產(chǎn)者稱為發(fā)布者,消費(fèi)者稱為訂閱者。 // 發(fā)布者發(fā)送到topic的消息,只有訂閱了topic的訂閱者才會(huì)收到消息。

為什么要使用kafka?
1、作為緩存
2、解(系統(tǒng))耦合
3、時(shí)間小于10ms 基本上是一種實(shí)時(shí)的
他能簡化,我們系統(tǒng)的設(shè)計(jì),提示公司的開發(fā)速度,和效率

2/kafka優(yōu)點(diǎn)
1、解耦
//S 系統(tǒng)與 A、B、C 系統(tǒng)緊密耦合。由于需求變動(dòng),A 系統(tǒng)修改了相關(guān)代碼,S 系統(tǒng)也需要調(diào)整 A 相關(guān)的代碼。 過幾天,C 系統(tǒng)需要?jiǎng)h除,S 緊跟著刪除 C 相關(guān)代碼;又過了幾天,需要新增 D 系統(tǒng),S 系統(tǒng)又要添加與 D 相關(guān)的代碼;再過幾天,程序猿瘋了 這樣各個(gè)系統(tǒng)緊密耦合,不利于維護(hù),也不利于擴(kuò)展?,F(xiàn)在引入 MQ,A 系統(tǒng)變動(dòng),A 自己修改自己的代碼即可;C 系統(tǒng)刪除,直接取消訂閱;D 系統(tǒng)新增,訂閱相關(guān)消息即可。這樣通過引入消息中間件,使各個(gè)系統(tǒng)都與 MQ 交互,從而避免它們之間的錯(cuò)綜復(fù)雜的調(diào)用關(guān)系。
2、冗余(副本)
//有些情況下,處理數(shù)據(jù)的過程會(huì)失敗。除非數(shù)據(jù)被持久化,否則將造成丟失。消息隊(duì)列把數(shù)據(jù)進(jìn)行持久化直到它們已經(jīng)被完全處理,通過這一方式規(guī)避了數(shù)據(jù)丟失風(fēng)險(xiǎn)。許多消息隊(duì)列所采用的"插入-獲取-刪除"范式中,在把一個(gè)消息從隊(duì)列中刪除之前,需要你的處理系統(tǒng)明確的指出該消息已經(jīng)被處理完畢,從而確保你的數(shù)據(jù)被安全的保存直到你使用完畢。
3、擴(kuò)展性
//因?yàn)橄㈥?duì)列解耦了你的處理過程,所以增大消息入隊(duì)和處理的頻率是很容易的,只要另外增加處理過程即可。不需要改變代碼、不需要調(diào)節(jié)參數(shù)。擴(kuò)展就像調(diào)大電力按鈕一樣簡單。
4、靈活性&峰值處理能力(削峰)
//數(shù)據(jù)庫的處理能力是有限的,在峰值期,過多的請(qǐng)求落到后臺(tái),一旦超過系統(tǒng)的處理能力,可能會(huì)使系統(tǒng)掛掉。 系統(tǒng)的處理能力是 2k/s,MQ 處理能力是 8k/s,峰值請(qǐng)求 5k/s,MQ 的處理能力遠(yuǎn)遠(yuǎn)大于數(shù)據(jù)庫,在高峰期,請(qǐng)求可以先積壓在 MQ 中,系統(tǒng)可以根據(jù)自身的處理能力以 2k/s 的速度消費(fèi)這些請(qǐng)求。這樣等高峰期一過,請(qǐng)求可能只有 100/s,系統(tǒng)可以很快的消費(fèi)掉積壓在 MQ 中的請(qǐng)求。
5、可恢復(fù)性
//系統(tǒng)的一部分組件失效時(shí),不會(huì)影響到整個(gè)系統(tǒng)。消息隊(duì)列降低了進(jìn)程間的耦合度,所以即使一個(gè)處理消息的進(jìn)程掛掉,加入隊(duì)列中的消息仍然可以在系統(tǒng)恢復(fù)后被處理。
6、順序保證
//在大多使用場(chǎng)景下,數(shù)據(jù)處理的順序都很重要。大部分消息隊(duì)列本來就是排序的,并且能保證數(shù)據(jù)會(huì)按照特定的順序來處理。Kafka保證一個(gè)Partition內(nèi)的消息的有序性。
7、緩沖
//在任何重要的系統(tǒng)中,都會(huì)有需要不同的處理時(shí)間的元素。例如,加載一張圖片比應(yīng)用過濾器花費(fèi)更少的時(shí)間。消息隊(duì)列通過一個(gè)緩沖層來幫助任務(wù)最高效率的執(zhí)行———寫入隊(duì)列的處理會(huì)盡可能的快速。該緩沖有助于控制和優(yōu)化數(shù)據(jù)流經(jīng)過系統(tǒng)的速度。 在用戶請(qǐng)求和數(shù)據(jù)庫之間 MQ起到很大到緩沖作用 在削峰上有很大到體現(xiàn)
8、異步通信
//很多時(shí)候,用戶不想也不需要立即處理消息。消息隊(duì)列提供了異步處理機(jī)制,允許用戶把一個(gè)消息放入隊(duì)列,但并不立即處理它。想向隊(duì)列中放入多少消息就放多少,然后在需要的時(shí)候再去處理它們。

優(yōu)點(diǎn)小結(jié):
1、單機(jī)吞吐量:
10萬級(jí)別,這是kafka大的優(yōu)勢(shì),就是他的吞吐量高,一般配合大數(shù)據(jù)類的系統(tǒng)來進(jìn)行實(shí)施數(shù)據(jù)計(jì)算,日志采集等場(chǎng)景
2、topic數(shù)據(jù)對(duì)吞吐量的影響:
topic從幾十個(gè)到上百個(gè)不等,但是topic越多,會(huì)很大程度的影響吞吐量,所以在同等機(jī)器下,kafka經(jīng)量保證topic數(shù)量不要過度。如果要支撐大規(guī)模的topic的話,需要增加更多的集群資源。
3、時(shí)效性:
延遲控制在ms以內(nèi)
4、可用性:
非常高,kafka是分布是的,一個(gè)數(shù)據(jù)多個(gè)副本,少數(shù)機(jī)器的宕機(jī),不會(huì)丟數(shù)據(jù),不會(huì)導(dǎo)致不可用
5、消息可靠性
經(jīng)過參數(shù)優(yōu)化配置,消息可以做到0丟失
6、功能支持
功能較為簡單,主要支持簡單的MQ功能,在大數(shù)據(jù)領(lǐng)域的實(shí)時(shí)計(jì)算以及日志采集被大規(guī)模使用,是事實(shí)上的標(biāo)準(zhǔn)

優(yōu)劣勢(shì)總結(jié)
kafka的特點(diǎn)其實(shí)很明顯,就是僅僅提供較少的核心功能,但是提供較高的吞吐量,ms級(jí)別的延遲,較高的可用性以及可靠性,而且是分布式的,可以任意的擴(kuò)展,同時(shí)kafka也是做好的是支撐少量的topic數(shù)量即可,保證其吞吐量,而且kafka唯一的一點(diǎn)劣勢(shì)就是可能出現(xiàn)就消息的重復(fù)消費(fèi)(為什么會(huì)出現(xiàn)消息到重復(fù)消費(fèi),見后期博客內(nèi)容),那么對(duì)數(shù)據(jù)準(zhǔn)確性會(huì)產(chǎn)生影響,在大數(shù)據(jù)領(lǐng)域中以及日志收集中,這點(diǎn)輕微可以忽略。 kafka的特性就是天然適合大數(shù)據(jù)實(shí)時(shí)計(jì)算以及日志的收集。

3/kafka中專業(yè)術(shù)語解釋說明(相關(guān)概念)
在深入理解kafka之前,有必要先了解和弄懂kafka中會(huì)出現(xiàn)到的相關(guān)術(shù)語概念:
1、Broker:Kafka 集群中包含的服務(wù)器。
//一個(gè)安裝kafka的服務(wù)器節(jié)點(diǎn) Kafka 集群包含一個(gè)或多個(gè)服務(wù)器,服務(wù)器節(jié)點(diǎn)稱為broker。
broker存儲(chǔ)topic的數(shù)據(jù)。如果某topic有N個(gè)partition,集群有N個(gè)broker,那么每個(gè)broker存儲(chǔ)該topic的一個(gè)partition。
如果某topic有N個(gè)partition,集群有(N+M)個(gè)broker,那么其中有N個(gè)broker存儲(chǔ)該topic的一個(gè)partition,剩下的M個(gè)broker不存儲(chǔ)該topic的partition數(shù)據(jù)。
如果某topic有N個(gè)partition,集群中broker數(shù)目少于N個(gè),那么一個(gè)broker存儲(chǔ)該topic的一個(gè)或多個(gè)partition。在實(shí)際生產(chǎn)環(huán)境中,盡量避免這種情況的發(fā)生,這種情況容易導(dǎo)致Kafka集群數(shù)據(jù)不均衡。
比如我們有5個(gè)broker節(jié)點(diǎn) 那么盡量創(chuàng)建的topic的partition分區(qū)個(gè)數(shù)為5的倍數(shù) 10 20 30... 50都可以 這樣可以讓kafka的數(shù)據(jù)均勻分布

2、Producer:消息生產(chǎn)者。
//生產(chǎn)者即數(shù)據(jù)的發(fā)布者,該角色將消息發(fā)布到Kafka的topic中。broker接收到生產(chǎn)者發(fā)送的消息后,broker將該消息追加到當(dāng)前用于追加數(shù)據(jù)的segment文件中。生產(chǎn)者發(fā)送的消息,存儲(chǔ)到一個(gè)partition中,生產(chǎn)者也可以指定數(shù)據(jù)存儲(chǔ)的partition。

3、Consumer:消息消費(fèi)者。
//消費(fèi)者可以從broker中讀取數(shù)據(jù)。消費(fèi)者可以消費(fèi)多個(gè)topic中的數(shù)據(jù)。

4、Consumer Group:每個(gè) Consumer 都屬于一個(gè) Consumer Group,每條消息只能被 Consumer Group 中的一個(gè) Consumer 消費(fèi),但可以被多個(gè) Consumer Group 消費(fèi)。
//每個(gè)Consumer屬于一個(gè)特定的Consumer Group(可為每個(gè)Consumer指定group name,若不指定group name則屬于默認(rèn)的group)。

5、Topic:消息的類別。每條消息都屬于某個(gè) Topic,不同的 Topic 之間是相互獨(dú)立的,即 Kafka 是面向 Topic 的。
//每條發(fā)布到Kafka集群的消息都有一個(gè)類別,這個(gè)類別被稱為Topic。(物理上不同Topic的消息分開存儲(chǔ),邏輯上一個(gè)Topic的消息雖然保存于一個(gè)或多個(gè)broker上但用戶只需指定消息的Topic即可生產(chǎn)或消費(fèi)數(shù)據(jù)而不必關(guān)心數(shù)據(jù)存于何處) 類似于數(shù)據(jù)庫的表名


6、Partition:每個(gè) Topic 分為多個(gè) Partition,Partition 是 Kafka 分配的單位。Kafka 物理上的概念,相當(dāng)于一個(gè)目錄,目錄下的日志文件構(gòu)成這個(gè) Partition。
//topic中的數(shù)據(jù)分割為一個(gè)或多個(gè)partition。每個(gè)topic至少有一個(gè)partition。每個(gè)partition中的數(shù)據(jù)使用多個(gè)segment文件存儲(chǔ)。partition中的數(shù)據(jù)是有序的,不同partition間的數(shù)據(jù)丟失了數(shù)據(jù)的順序。如果topic有多個(gè)partition,消費(fèi)數(shù)據(jù)時(shí)就不能保證數(shù)據(jù)的順序。在需要嚴(yán)格保證消息的消費(fèi)順序的場(chǎng)景下,需要將partition數(shù)目設(shè)為1。

7、Replica:Partition 的副本,保障 Partition 的高可用。
//每個(gè)topic將被分成多個(gè)partition(區(qū)),此外kafka還可以配置partitions需要備份的個(gè)數(shù)(replicas)

8、Leader:Replica 中的一個(gè)角色, Producer 和 Consumer 只跟 Leader 交互。
//每個(gè)partition有多個(gè)副本,其中有且僅有一個(gè)作為Leader,Leader是當(dāng)前負(fù)責(zé)數(shù)據(jù)的讀寫的partition。

9、Follower:Replica 中的一個(gè)角色,從 Leader 中復(fù)制數(shù)據(jù)。
//Follower跟隨Leader,所有寫請(qǐng)求都通過Leader路由,數(shù)據(jù)變更會(huì)廣播給所有Follower,F(xiàn)ollower與Leader保持?jǐn)?shù)據(jù)同步。如果Leader失效,則從Follower中選舉出一個(gè)新的Leader。當(dāng)Follower與Leader掛掉、卡住或者同步太慢,leader會(huì)把這個(gè)follower從“in sync replicas”(ISR)列表中刪除,重新創(chuàng)建一個(gè)Follower。

基于replicated方案,那么就意味著需要對(duì)多個(gè)備份進(jìn)行調(diào)度;每個(gè)partition都有一個(gè)server為"leader";leader負(fù)責(zé)所有的讀寫操作,如果leader失效,那么將會(huì)有其他follower來接管(成為新的leader);follower只是單調(diào)的和leader跟進(jìn),同步消息即可..由此可見作為leader的server承載了全部的請(qǐng)求壓力,因此從集群的整體考慮,有多少個(gè)partitions就意味著有多少個(gè)"leader",kafka會(huì)將"leader"均衡的分散在每個(gè)實(shí)例上,來確保整體的性能穩(wěn)定.
其中partition leader的位置(host:port)注冊(cè)在zookeeper中

10、Controller(調(diào)節(jié)器):Kafka 集群中的其中一個(gè)服務(wù)器,用來進(jìn)行 Leader Election(leader 選舉) 以及各種 Failover(故障轉(zhuǎn)移)。
//Controller(調(diào)節(jié)器) 節(jié)點(diǎn)都分片在 zk中記載 在哪個(gè)broker節(jié)點(diǎn)上 以及 controller 創(chuàng)建的時(shí)間 //查看方式 get /kafkagroup/controller

11、Zookeeper:Kafka 通過 Zookeeper 來存儲(chǔ)集群的 Meta 信息。(問題:kafka的哪些元數(shù)據(jù)信息在zk中,見后期博客)

12、Coordinator:類似 Broker 中選了一個(gè) Controller 出來,消費(fèi)也要從 Broker 中選一個(gè) Coordinator,用于分配 Partition。

————————————————————————————————————————————————————————————————————————————————————————————————————————————————
參考鏈接:
kafka基本原理重要概念優(yōu)缺點(diǎn) https://blog.51cto.com/12445535/2353399
架構(gòu)成長之路:Kafka設(shè)計(jì)原理看了又忘,忘了又看?一文讓你掌握 https://www.toutiao.com/i6714606866355192328/
Kafka學(xué)習(xí)之路 (一)Kafka的簡介 https://www.cnblogs.com/qingyunzong/p/9004509.html
消息隊(duì)列kafka特性 https://blog.csdn.net/qq_36236890/article/details/81174504

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

當(dāng)前文章:kafka深入研究之路(2)kafka簡介與專業(yè)術(shù)語解釋說明-創(chuàng)新互聯(lián)
文章URL:http://aaarwkj.com/article6/ccohog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站設(shè)計(jì)公司、移動(dòng)網(wǎng)站建設(shè)標(biāo)簽優(yōu)化、電子商務(wù)、網(wǎng)站導(dǎo)航

廣告

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

成都做網(wǎng)站
中国日本欧美最黄大片| 又黄又湿又刺激中文字幕| 成年人午夜看片免费网站| 成年人国产免费在线观看| 国产在线自拍一区二区| 日韩高清不卡免费视频| 亚洲精品一区二区午夜| 日韩一区二区三区av在线| 亚洲国产日本一区自拍| 翔田千里精品久久一区二| 亚洲超清av在线播放一区二区| 亚洲天堂一区二区av| 久久精品国产亚洲av麻豆她| 亚洲午夜精品美女写真| 日韩传媒在线观看视频| 国产三级精品大乳人妇| 亚洲女同另类在线播放视频| 亚洲成人高清av在线| 在线观看中文字幕日韩精品| 青青草视频免费公开播放| 老湿机午夜十分钟视频| 日韩精品a区二区在线电影| 国产精品粗又长一区| 亚洲综合日韩精品国产av| 中文字幕中出亚洲精品| 日韩亚洲中文一区三级黄片| 91国内偷拍富婆国内精品对白| 性知音国产精品粉色视频| 亚洲av天堂一区二区香蕉| 国产视频不卡一区二区| 国产精品久久久久久老熟女| 国产在线播放精品视频| 亚洲麻豆精品午夜免费| 欧美视频在线免费观看黄片| 国产原创传媒在线观看| 欧美日本精品在线观看| 亚洲国产精品激情在线| 五月婷婷丁香综合中文字幕| 深夜av一区二区三区| 岛国av有码高清在线观看| av一区二区中文字幕|