![05.kafka基礎(chǔ)知識(shí)和集群搭建_第1頁(yè)](http://file4.renrendoc.com/view/ce589cb9be7be00e548979903d8549a0/ce589cb9be7be00e548979903d8549a01.gif)
![05.kafka基礎(chǔ)知識(shí)和集群搭建_第2頁(yè)](http://file4.renrendoc.com/view/ce589cb9be7be00e548979903d8549a0/ce589cb9be7be00e548979903d8549a02.gif)
![05.kafka基礎(chǔ)知識(shí)和集群搭建_第3頁(yè)](http://file4.renrendoc.com/view/ce589cb9be7be00e548979903d8549a0/ce589cb9be7be00e548979903d8549a03.gif)
![05.kafka基礎(chǔ)知識(shí)和集群搭建_第4頁(yè)](http://file4.renrendoc.com/view/ce589cb9be7be00e548979903d8549a0/ce589cb9be7be00e548979903d8549a04.gif)
![05.kafka基礎(chǔ)知識(shí)和集群搭建_第5頁(yè)](http://file4.renrendoc.com/view/ce589cb9be7be00e548979903d8549a0/ce589cb9be7be00e548979903d8549a05.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Storm企業(yè)項(xiàng)目實(shí)戰(zhàn)(含多個(gè)完整應(yīng)用)講師:Cloudy(北風(fēng)網(wǎng) )答疑 5、Kafka基礎(chǔ)和集群搭建Kafka課程采用:Kafka是LinkedIn開(kāi)源出來(lái)的一個(gè)高吞吐的分布式消息系統(tǒng)。使用scala開(kāi)發(fā),支持多語(yǔ)言客戶端(c+、java、python等)其具有以下特點(diǎn):1) 支持高Throughput(高吞吐量)的應(yīng)用2) 無(wú)需停機(jī)即可擴(kuò)展機(jī)器3) 持久化:通過(guò)將數(shù)據(jù)持久化到硬盤(pán)以及replication防止數(shù)據(jù)丟失4) 支持online和offline的場(chǎng)景。Kafka架構(gòu)Broker:消息中間件處理結(jié)點(diǎn),一個(gè)kafka節(jié)點(diǎn)就是一個(gè)brokerProducer:消息發(fā)布者Consume
2、r:消息訂閱者消息kafka的消息分幾個(gè)層次:1) Topic:一類(lèi)消息,例如page view日志,click日志等都可以以topic的形式存在,kafka集群能夠同時(shí)負(fù)責(zé)多個(gè)topic的分發(fā)2) Partition: Topic物理上的分組,一個(gè)topic可以分為多個(gè)partition,每個(gè)partition是一個(gè)有序的隊(duì)列。partition中的每條消息都會(huì)被分配一個(gè)有序的id(offset)。3) Message:消息,最小訂閱單元消息處理流程數(shù)據(jù)流程:1. Producer根據(jù)指定的partition方法(round-robin、hash等),將消息發(fā)布到指定topic的partit
3、ion里面2. kafka集群接收到Producer發(fā)過(guò)來(lái)的消息后,將其持久化到硬盤(pán),并保留消息指定時(shí)長(zhǎng)(可配置),而不關(guān)注消息是否被消費(fèi)。3. Consumer從kafka集群消費(fèi)(pull或push方式)數(shù)據(jù),并控制獲取消息的offset偏移量Kafka如何實(shí)現(xiàn)高吞吐量?High Throughput是kafka需要實(shí)現(xiàn)的核心目標(biāo)之一,為此kafka做了以下一些設(shè)計(jì):1)數(shù)據(jù)磁盤(pán)持久化:消息不在內(nèi)存中cache,直接寫(xiě)入到磁盤(pán),充分利用磁盤(pán)的順序讀寫(xiě)性能,所以broker沒(méi)有內(nèi)存壓力。2)zero-copy:減少I(mǎi)O操作步驟3)數(shù)據(jù)批量發(fā)送4)數(shù)據(jù)壓縮5)Topic劃分為多個(gè)partiti
4、on,提高parallelism (并行度)負(fù)載均衡 load balance&HAKafka如何實(shí)現(xiàn)負(fù)載均衡的?1) producer根據(jù)用戶指定的算法,將消息發(fā)送到指定的partition2) 存在多個(gè)partiiton,每個(gè)partition有自己的replica(副本),每個(gè)replica分布在不同的Broker節(jié)點(diǎn)上3) 多個(gè)partition需要選取出lead partition,leader partition負(fù)責(zé)讀寫(xiě),并由zookeeper負(fù)責(zé)fail over4) 通過(guò)zookeeper管理broker與consumer的動(dòng)態(tài)加入與離開(kāi)擴(kuò)容當(dāng)需要增加broker結(jié)點(diǎn)時(shí),新增的
5、broker會(huì)向zookeeper注冊(cè),而producer及consumer會(huì)根據(jù)注冊(cè)在zookeeper上的watcher感知這些變化,并及時(shí)作出調(diào)整。集群搭建步驟1. Kafka下載:wget 解壓 tar zxvf kafka_2.9.2-0.8.1.tgzcd kafka_2.9.2-0.8.1kafka使用scala編寫(xiě),需要下載scala相關(guān)的庫(kù)下載安裝sbt:wget $ rpm -ivh sbt.rpm集群搭建步驟3. 更新scala環(huán)境:sbt update sbt package #sbt assembly-package-dependency4. 配置config/ser
6、pertiesbroker.id為依次增長(zhǎng)的:0、1、2、3、4,集群中唯一idlog.dirs設(shè)置到大硬盤(pán)路徑下 work.threadsnum.partitions ,默認(rèn)分區(qū)數(shù)num.io.threads 建議值為機(jī)器的核數(shù);zookeeper.connect 設(shè)置為zookeeper Servers 列表,各節(jié)點(diǎn)以逗號(hào)分開(kāi);Kafka 啟動(dòng)、創(chuàng)建topic在kafka的部署目錄下,在各個(gè)節(jié)點(diǎn)上通過(guò)如下命令來(lái)啟動(dòng):$ nohup bin/kafka-server-start.sh config/perties &rootmaster # jps3098
7、ZooKeeperMain3037 Kafka創(chuàng)建topic:$ bin/kafka-topics.sh -zookeeper 07:2181,08:2181 -topic topicName -replication-factor 1 -partitions 1 -create其中, -topic 定義topic名 -replication-factor 定義副本數(shù) -partitions 定義分區(qū)數(shù)查看全部Topic:bin/kafka-topics.sh -zookeeper 07:2181,07:2
8、181 -list刪除Topic:./kafka-topics.sh -topic topicName -delete -zookeeper 07:2181,07:2181查看Topic明細(xì):./kafka-topics.sh -topic test -describe -zookeeper 07:2181,07:2181Productor:bin/kafka-console-producer.sh -broker-list07:9092,08:9092 -top
9、ic topicNameConsumer:bin/kafka-console-consumer.sh -zookeeper 07:2181,07:2181 -topic topicName -from-beginning生產(chǎn)和消費(fèi)異常處理報(bào)異常:Failed to load class org.slf4j.impl.StaticLoggerBinder解決方法:下載slf4j-1.7.6.zipwget 解壓unzip slf4j-1.7.6.zip把slf4j-nop-1.7.6.jar 包復(fù)制到kafka libs目錄下面broker.id整數(shù),
10、建議根據(jù)ip區(qū)分log.dirskafka存放消息文件的路徑,默認(rèn)/tmp/kafka-logsportbroker用于接收producer消息的端口zookeeper.connnectzookeeper連接格式為 ip1:port,ip2:port,ip3:portmessage.max.bytes單條消息的最大長(zhǎng)度 work.threadsbroker用于處理網(wǎng)絡(luò)請(qǐng)求的線程數(shù)如不配置默認(rèn)為3,perties默認(rèn)是2num.io.threadsbroker用于執(zhí)行網(wǎng)絡(luò)請(qǐng)求的IO線程數(shù)如不配置默認(rèn)為8,perties默認(rèn)是2可適當(dāng)增大,queued.max.requests排隊(duì)等候IO線程執(zhí)行的requests默認(rèn)為500broker的hostname默認(rèn)null,建議寫(xiě)主機(jī)的ip,不然消費(fèi)端不配置hosts會(huì)有麻煩num.partitionstopic的默認(rèn)分區(qū)數(shù)默認(rèn)2log.retention.hours消息被刪除前保存多少小時(shí)默認(rèn)1周168小時(shí)auto.create.topics.enable是
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度農(nóng)業(yè)機(jī)械購(gòu)置擔(dān)保合同糾紛起訴狀撰寫(xiě)要領(lǐng)
- 散伙協(xié)議書(shū)(20篇)
- 2025年債權(quán)轉(zhuǎn)讓協(xié)議綜述
- 2025年公司變革資產(chǎn)接收合同模板
- 2025年度實(shí)習(xí)生接收單位協(xié)議格式
- 2025年軟泡聚醚項(xiàng)目申請(qǐng)報(bào)告模范
- 2025年物流服務(wù)商戰(zhàn)略聯(lián)盟策劃協(xié)議
- 2025年公司職員車(chē)輛共享合同
- 2025年社交APP項(xiàng)目規(guī)劃申請(qǐng)報(bào)告
- 2025年兒科用藥項(xiàng)目提案報(bào)告模范
- 2025公文寫(xiě)作考試題庫(kù)(含參考答案)
- 2025年湖南科技職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年南京信息職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 住建局條文解讀新規(guī)JGJT46-2024《施工現(xiàn)場(chǎng)臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)》
- 簡(jiǎn)易施工方案模板范本
- 2019統(tǒng)編版高中生物必修2遺傳與進(jìn)化教學(xué)計(jì)劃含教學(xué)進(jìn)度表
- 電子產(chǎn)品設(shè)計(jì)生產(chǎn)工藝流程課件
- 溫室大棚、花卉苗圃采暖方案(空氣源熱泵)
- 即興口語(yǔ)(姜燕)-課件-即興口語(yǔ)第五章PPT-中國(guó)傳媒大學(xué)
- 高等無(wú)機(jī)化學(xué)理論—原子參數(shù)及元素周期性
- 《神筆馬良》閱讀測(cè)試題(50題)含答案
評(píng)論
0/150
提交評(píng)論