kafka核心原理總結
新霸哥發現在新的技術發展時代,訊息中介軟體也越來越受重視,很多的企業在招聘的過程中著重強調能夠熟練使用訊息中介軟體,所有做為一個軟體開發愛好者,新霸哥在此提醒廣大的軟體開發朋友有時間多學習。
訊息中介軟體利用高效可靠的訊息傳遞機制進行平臺無關的資料交流。關於訊息中介軟體的一下介紹就介紹到這裡了,感興趣的可以繼續瞭解,下面新霸哥將和大家介紹一下kafka的一下相關知識。
kafka已經被很多的中小公司使用,訊息傳送接受,有用過的朋友可能就很清楚了,kafka是一個支援分割槽的、分散式、多副本的,是一個基於zookeeper協調的分散式訊息系統,我們看中的就是其中的一個最大的特性就是可以實時的處理大量資料以滿足各種需求場景。
kafka核心特性
高效性設計是其優於其他訊息中介軟體的一個主要特性,還有一個重要特性就是訊息可靠性,能夠對訊息集合壓縮,還有備份機制。能夠支援上千個客戶端同時讀寫,kafka叢集支援熱擴充套件。
kafka核心元件
(1)replication(副本)、partition(分割槽)
一個topic能有非常多個副本,如果伺服器配置足夠好,可以配很多個,副本的個數決定了有多少個broker存放寫入的資料;簡單的來說副本是以partition為單位的,
存放副本也可以這樣簡單的理解,備份若干個partition、但是隻能有一個partition被選為Leader用於讀寫。在這裡新霸哥提醒剛入門的朋友partition(分割槽)
數量設定最好大於consumer數量,其實,這樣設計的思想就是保證每個消費者都有一個partition。
(2)producer(生產者)
kafka中的producer能直接傳送訊息到Leader的 partition,可以看出producer能決定將訊息推送到哪些partition。
也能使用批處理(Batch)推送訊息,提高效率。在這裡新霸哥給大家一個重要的提示那就是這裡有一個重要的引數acks(0、-1、1)
(3)consumer(消費者)
kafka中的同一個group的consumer不可以同時消費同一個partition,對於同一個group的consumer,
kafka就可以認為是一個佇列訊息服務,各個consumer均衡的消費相應partition中的資料,有些時候會遇到當消費者數大於分割槽數時,
一般會出現leader consumer和follower consumer,leader consumer處理所有的讀寫請求,
特殊情況下leader consumer掛掉時,follower consumer會成為新的leader consumer。
kafka的一些核心原理技術就先介紹到這裡了,更多的關於Kakfa的設計思想的一些相關的技術,新霸哥後面會繼續放出。
訊息中介軟體利用高效可靠的訊息傳遞機制進行平臺無關的資料交流。關於訊息中介軟體的一下介紹就介紹到這裡了,感興趣的可以繼續瞭解,下面新霸哥將和大家介紹一下kafka的一下相關知識。
kafka已經被很多的中小公司使用,訊息傳送接受,有用過的朋友可能就很清楚了,kafka是一個支援分割槽的、分散式、多副本的,是一個基於zookeeper協調的分散式訊息系統,我們看中的就是其中的一個最大的特性就是可以實時的處理大量資料以滿足各種需求場景。
kafka核心特性
高效性設計是其優於其他訊息中介軟體的一個主要特性,還有一個重要特性就是訊息可靠性,能夠對訊息集合壓縮,還有備份機制。能夠支援上千個客戶端同時讀寫,kafka叢集支援熱擴充套件。
kafka核心元件
(1)replication(副本)、partition(分割槽)
一個topic能有非常多個副本,如果伺服器配置足夠好,可以配很多個,副本的個數決定了有多少個broker存放寫入的資料;簡單的來說副本是以partition為單位的,
存放副本也可以這樣簡單的理解,備份若干個partition、但是隻能有一個partition被選為Leader用於讀寫。在這裡新霸哥提醒剛入門的朋友partition(分割槽)
數量設定最好大於consumer數量,其實,這樣設計的思想就是保證每個消費者都有一個partition。
(2)producer(生產者)
kafka中的producer能直接傳送訊息到Leader的 partition,可以看出producer能決定將訊息推送到哪些partition。
也能使用批處理(Batch)推送訊息,提高效率。在這裡新霸哥給大家一個重要的提示那就是這裡有一個重要的引數acks(0、-1、1)
(3)consumer(消費者)
kafka中的同一個group的consumer不可以同時消費同一個partition,對於同一個group的consumer,
kafka就可以認為是一個佇列訊息服務,各個consumer均衡的消費相應partition中的資料,有些時候會遇到當消費者數大於分割槽數時,
一般會出現leader consumer和follower consumer,leader consumer處理所有的讀寫請求,
特殊情況下leader consumer掛掉時,follower consumer會成為新的leader consumer。
kafka的一些核心原理技術就先介紹到這裡了,更多的關於Kakfa的設計思想的一些相關的技術,新霸哥後面會繼續放出。
相關文章
- kafka面試總結Kafka面試
- 插曲:Kafka的HW,LEO更新原理及執行流程總結Kafka
- Kafka 總結學習Kafka
- Kafka面試題總結Kafka面試題
- 訊息佇列MQ核心原理全面總結(11大必會原理)佇列MQ
- Kafka知識點總結Kafka
- kafka核心原理的祕密,藏在這16張圖裡Kafka
- Kafka 常用命令總結Kafka
- laravel核心概念總結Laravel
- session原理總結Session
- Kafka SASL ACL配置踩坑總結Kafka
- 深入理解Kafka核心設計及原理(二):生產者Kafka
- 深入理解Kafka核心設計及原理(三):消費者Kafka
- 深入理解Kafka核心設計及原理(四):主題管理Kafka
- Rxjava工作原理總結RxJava
- Kafka學習(四)-------- Kafka核心之ProducerKafka
- 訊息佇列Kafka學習總結佇列Kafka
- Kafka學習(三)-------- Kafka核心之CosumerKafka
- Dubbo是什麼?核心總結
- Kubernetes核心概念總結
- Kafka核心元件詳解Kafka元件
- 感知機(perceptron)原理總結
- 譜聚類原理總結聚類
- vue原理相關總結Vue
- kafka原理解析Kafka
- kafka基礎原理Kafka
- ES6核心知識總結
- MR核心程式設計思想總結程式設計
- mysql之常用函式(核心總結)MySql函式
- iOS底層原理總結 – RunLoopiOSOOP
- Elasticsearch 5.6 原理和使用總結Elasticsearch
- Node.js 的原理總結Node.js
- Git概念及工作原理總結Git
- 微機原理之DMA總結
- iOS底層原理總結 - RunLoopiOSOOP
- EM演算法原理總結演算法
- Apriori演算法原理總結演算法
- Oracle Buffer Cache原理總結(一)Oracle