記一次kafka的high level和low level
php rdkafka
之前的業務用的rdkafka的low level進行訊息消費,沒什麼問題
今天一個新業務,申請的新的broker和topic,結果low level就消費不到資料了
後來改成了high level(https://arnaud-lb.github.io/php-rdkafka/phpdoc/rdkafka.examples-high-level-consumer.html)可以消費到了,問題是解決了,但新的疑問又來了:high level 和 low level 有啥區別。
看了看,大致瞭解了一下。以前以為 high level 比 low level 有 "higher" 、"deeper" 的用法,通過查閱,發現理解反了,他這high和low就像語言一樣,php是高階語言,彙編是低階語言,是這麼個high和low,越low越高效,但要求也越高。
總的區別就是,high level 和 low level 的區別就是 high level遮蔽了一些細節,比如往哪個partition發,offset咋存往哪兒存,說白了只把kafka作為純fifo使用,low level的話,自己可以自定義往哪個partition上發訊息,包括存offset的處理都可以自己搞,去自定義。
我當時讀不到,只是說明“驢脣對不上馬嘴”,訊息的生產者把訊息發到了哪個partition我不知道,但我用low level消費的時候指定了partition(這也說明對這個擴充套件的瞭解還是不夠),只消費這個partition的訊息,當然不一定有了。改成high level後就變了,我不管你哪個partition有新鮮的訊息,我都要消費。
參考:http://www.infoq.com/cn/articles/kafka-analysis-part-4
相關文章
- Unity Low-level Native Plugin InterfaceUnityPlugin
- Elasticsearch Java High Level REST Client(入門)ElasticsearchJavaRESTclient
- Elasticsearch Java High Level REST Client(Exists API)ElasticsearchJavaRESTclientAPI
- Elasticsearch Java High Level REST Client(Delete API)ElasticsearchJavaRESTclientdeleteAPI
- Elasticsearch Java Low Level REST Client(初始化)ElasticsearchJavaRESTclient
- [論文][半監督語義分割]Semi-Supervised Semantic Segmentation with High- and Low-level ConsistencySegmentation
- SpringBoot:Java High Level REST Client 搜尋 APISpring BootJavaRESTclientAPI
- Java操作Elasticsearch 之 [Java High Level REST Clientedit]JavaElasticsearchRESTclient
- Elasticsearch Java Low Level REST Client(執行請求)ElasticsearchJavaRESTclient
- springboot整合elasticsearch7.2(基於官方high level client)Spring BootElasticsearchclient
- Level Up
- natas(level0-level14)通關詳細指南(一)
- E. Level Up
- E - Level K Palindrome
- CSS LEVEL4CSS
- BUU_jarvisoj_level0JAR
- RuneScape - To verify your level of combatBAT
- [LintCode] Binary Tree Level Order
- FUNBOX-5: NEXT LEVEL
- es筆記五之term-level的查詢操作筆記
- dvwa-暴力破解(low-high)
- ARM和GCC最佳化等級optimization levelGC
- 理一理Edge-triggered和Level-triggered
- 電平(level)&脈衝(pulse)
- [20220124]index split level.txtIndex
- Binary Tree Level Order Traversal [LEETCODE]LeetCode
- Binary-tree-level-order-traversal
- 什麼是 SAP Spartacus UI 的 feature levelUI
- PostgreSQL DBA(102) - pgAdmin(Row Level Security)SQL
- 【XSS-labs】Level 1-5
- 102-Binary Tree Level Order Traversal
- SAP ABAP 業務開關和 SAP 電商雲的 Feature Level
- Java | 頂層類(Top-Level Class)Java
- 103. Binary Tree Zigzag Level Order Traversal
- 107-Binary Tree Level Order Traversal II
- 關於資料庫 statistics_level的介紹資料庫
- gem5 CPU ISA level is lower than requiredUI
- [譯]19個CSS level 4 選擇器CSS