kafka系列4 什麼是kafka

2021-07-12 05:31:20 字數 495 閱讀 6199

關於什麼是kafka,看過乙個簡單例子。

舉個例子,生產者消費者,生產者生產雞蛋,消費者消費雞蛋,生產者生產乙個雞蛋,消費者就消費乙個雞蛋,假設消費者消費雞蛋的時候噎住了(系統宕機了),生產者還在生產雞蛋,那新生產的雞蛋就丟失了。再比如生產者很強勁(大交易量的情況),生產者1秒鐘生產100個雞蛋,消費者1秒鐘只能吃50個雞蛋,那要不了一會,消費者就吃不消了(訊息堵塞,最終導致系統超時),消費者拒絕再吃了,」雞蛋「又丟失了,這個時候我們放個籃子在它們中間,生產出來的雞蛋都放到籃子裡,消費者去籃子裡拿雞蛋,這樣雞蛋就不會丟失了,都在籃子裡,而這個籃子就是」kafka「。

雞蛋其實就是「資料流」,系統之間的互動都是通過「資料流」來傳輸的(就是tcp、http什麼的),也稱為報文,也叫「訊息」。

訊息佇列滿了,其實就是籃子滿了,」雞蛋「 放不下了,那趕緊多放幾個籃子,其實就是kafka的擴容。

當有多個消費者時,多加幾個p,意味著可以併發去取,吞吐量就更大

所以通俗講,kafka,它就是那個"籃子"。

Kafka科普系列 什麼是LSO?

可能大家在使用kafka的時候並沒有太在意乙個消費端的引數 isolation.level,這個引數用來配置消費者的事務隔離級別。字串型別,有效值為 read uncommitted 和 read committed 表示消費者所消費到的位置,如果設定為 read committed 那麼消費者就會...

為什麼是kafka 二

1 kafka的刪除策略應該怎麼配置?為了提公升效能,我是不是應該1小時刪除一次消費過的資料。完全可以根據磁碟大小配置,只要磁碟足夠用,完全沒必要刪除的那麼著急。kafka的吞吐量不會因為資料量的增長而降低。因為讀寫資料時,kafka完全是順序的,只記錄offset,時間複雜度是o 1 我曾經測試過...

Kafka科普系列Kafka中的事務是什麼樣子的

inittransactions 方法用來初始化事務 begintransaction 方法用來開啟事務 sendoffsetstotransaction 方法為消費者提供在事務內的位移提交的操作 committransaction 方法用來提交事務 aborttransaction 方法用來中止事...