日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Kafka精华问答 | Kafka有哪些使用场景?

發(fā)布時(shí)間:2024/9/27 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Kafka精华问答 | Kafka有哪些使用场景? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Kafka is a distributed,partitioned,replicated commit logservice。它提供了類似于JMS的特性,但是在設(shè)計(jì)實(shí)現(xiàn)上完全不同,此外它并不是JMS規(guī)范的實(shí)現(xiàn)。今天就讓我們一起來看看關(guān)于Kafka 的精華問答吧。


1

Q:Kafka的使用場(chǎng)景


A:?1、Messaging? ?

? ? 對(duì)于一些常規(guī)的消息系統(tǒng),kafka是個(gè)不錯(cuò)的選擇;partitons/replication和容錯(cuò),可以使kafka具有良好的擴(kuò)展性和性能優(yōu)勢(shì).不過到目前為止,我們應(yīng)該很清楚認(rèn)識(shí)到,kafka并沒有提供JMS中的"事務(wù)性""消息傳輸擔(dān)保(消息確認(rèn)機(jī)制)""消息分組"等企業(yè)級(jí)特性;kafka只能使用作為"常規(guī)"的消息系統(tǒng),在一定程度上,尚未確保消息的發(fā)送與接收絕對(duì)可靠(比如,消息重發(fā),消息發(fā)送丟失等)

? ? 2、Websit activity tracking

? ? kafka可以作為"網(wǎng)站活性跟蹤"的最佳工具;可以將網(wǎng)頁/用戶操作等信息發(fā)送到kafka中.并實(shí)時(shí)監(jiān)控,或者離線統(tǒng)計(jì)分析等

? ? 3、Log Aggregation

? ? kafka的特性決定它非常適合作為"日志收集中心";application可以將操作日志"批量""異步"的發(fā)送到kafka集群中,而不是保存在本地或者DB中;kafka可以批量提交消息/壓縮消息等,這對(duì)producer端而言,幾乎感覺不到性能的開支.此時(shí)consumer端可以使hadoop等其他系統(tǒng)化的存儲(chǔ)和分析系統(tǒng).


2

Q:Kafka有哪些特性?


A:- 高吞吐量、低延遲:kafka每秒可以處理幾十萬條消息,它的延遲最低只有幾毫秒,每個(gè)topic可以分多個(gè)partition, consumer group 對(duì)partition進(jìn)行consume操作。

- 可擴(kuò)展性:kafka集群支持熱擴(kuò)展

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

- 容錯(cuò)性:允許集群中節(jié)點(diǎn)失敗(若副本數(shù)量為n,則允許n-1個(gè)節(jié)點(diǎn)失敗)

- 高并發(fā):支持?jǐn)?shù)千個(gè)客戶端同時(shí)讀寫


3

Q:Kafka存在哪些組件?


A:一個(gè)MQ需要哪些部分?生產(chǎn)、消費(fèi)、消息類別、存儲(chǔ)等等。

? 對(duì)于kafka而言,kafka服務(wù)就像是一個(gè)大的水池。不斷的生產(chǎn)、存儲(chǔ)、消費(fèi)著各種類別的消息。那么kafka由何組成呢?

> Kafka服務(wù):

? > Topic:主題,Kafka處理的消息的不同分類。

? > Broker:消息代理,Kafka集群中的一個(gè)kafka服務(wù)節(jié)點(diǎn)稱為一個(gè)broker,主要存儲(chǔ)消息數(shù)據(jù)。存在硬盤中。每個(gè)topic都是有分區(qū)的。

? > Partition:Topic物理上的分組,一個(gè)topic在broker中被分為1個(gè)或者多個(gè)partition,分區(qū)在創(chuàng)建topic的時(shí)候指定。

? > Message:消息,是通信的基本單位,每個(gè)消息都屬于一個(gè)partition

> Kafka服務(wù)相關(guān)

? > Producer:消息和數(shù)據(jù)的生產(chǎn)者,向Kafka的一個(gè)topic發(fā)布消息。

? > Consumer:消息和數(shù)據(jù)的消費(fèi)者,定于topic并處理其發(fā)布的消息。

? > Zookeeper:協(xié)調(diào)kafka的正常運(yùn)行。


4

Q:Kafka的主要功能有哪些?

?

A:根據(jù)官網(wǎng)的介紹,ApacheKafka?是一個(gè)分布式流媒體平臺(tái),它主要有3種功能:

  1:It lets you publish and subscribe to streams of records.發(fā)布和訂閱消息流,這個(gè)功能類似于消息隊(duì)列,這也是kafka歸類為消息隊(duì)列框架的原因

  2:It lets you store streams of records in a fault-tolerant way.以容錯(cuò)的方式記錄消息流,kafka以文件的方式來存儲(chǔ)消息流

  3:It lets you process streams of records as they occur.可以再消息發(fā)布的時(shí)候進(jìn)行處理


5

Q:Kafka存儲(chǔ)策略


A:1)kafka以topic來進(jìn)行消息管理,每個(gè)topic包含多個(gè)partition,每個(gè)partition對(duì)應(yīng)一個(gè)邏輯log,有多個(gè)segment組成。

2)每個(gè)segment中存儲(chǔ)多條消息(見下圖),消息id由其邏輯位置決定,即從消息id可直接定位到消息的存儲(chǔ)位置,避免id到位置的額外映射。

3)每個(gè)part在內(nèi)存中對(duì)應(yīng)一個(gè)index,記錄每個(gè)segment中的第一條消息偏移。

4)發(fā)布者發(fā)到某個(gè)topic的消息會(huì)被均勻的分布到多個(gè)partition上(或根據(jù)用戶指定的路由規(guī)則進(jìn)行分布),broker收到發(fā)布消息往對(duì)應(yīng)partition的最后一個(gè)segment上添加該消息,當(dāng)某個(gè)segment上的消息條數(shù)達(dá)到配置值或消息發(fā)布時(shí)間超過閾值時(shí),segment上的消息會(huì)被flush到磁盤,只有flush到磁盤上的消息訂閱者才能訂閱到,segment達(dá)到一定的大小后將不會(huì)再往該segment寫數(shù)據(jù),broker會(huì)創(chuàng)建新的segment。


小伙伴們沖鴨,后臺(tái)留言區(qū)等著你!

關(guān)于kafka,今天你學(xué)到了什么?還有哪些不懂的?除此還對(duì)哪些話題感興趣?快來留言區(qū)打卡啦!留言方式:打開第XX天,答:……

同時(shí)歡迎大家搜集更多問題,投稿給我們!風(fēng)里雨里留言區(qū)里等你~


福利

1、掃描添加小編微信,備注“姓名+公司職位”,加入【云計(jì)算學(xué)習(xí)交流群】,和志同道合的朋友們共同打卡學(xué)習(xí)!


2、公眾號(hào)后臺(tái)回復(fù):白皮書,獲取IDC最新數(shù)據(jù)白皮書整理資料!


推薦閱讀:

  • 在線公開課 | 從理論走向?qū)嵺`,多角度詳解Cloud Native

  • 蘋果春季發(fā)布會(huì):庫(kù)克絕不玩別人玩剩下的!

  • 中國(guó)區(qū)塊鏈職業(yè)發(fā)展現(xiàn)狀: 30歲前不做開發(fā); 平均薪資僅38.4萬; 跳槽薪資漲三成 (附完整報(bào)告下載資源)

  • 庫(kù)克談“唱衰蘋果”:一派胡言!

  • 上海交大CV博導(dǎo)微信群辱罵學(xué)生,已停止教學(xué)

  • 李沐團(tuán)隊(duì)新作Gluon,復(fù)現(xiàn)CV經(jīng)典模型到BERT,簡(jiǎn)單好用 | 強(qiáng)烈推薦

  • 日本樂天要求員工學(xué)編程,AI 進(jìn)中小學(xué)課堂,全民編程時(shí)代來了!


喜歡就點(diǎn)擊“在看”吧

總結(jié)

以上是生活随笔為你收集整理的Kafka精华问答 | Kafka有哪些使用场景?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。