Kafka開發問題解決思路

2021-10-11 18:51:25 字數 575 閱讀 3693

訊息丟失解決方案:

首先對 kafka 進行限速, 其次啟用重試機制,重試間隔時間設定長一些,最後 kafka 設定

acks=all,即需要相應的所有處於 isr 的分割槽都確認收到該訊息後,才算傳送成功

訊息重複解決方案:

訊息可以使用唯一 id 標識

生產者(ack=all 代表至少成功傳送一次)

消費者 (offset 手動提交,業務邏輯成功處理後,提交 offset)

落表(主鍵或者唯一索引的方式,避免重複資料)

業務邏輯處理(選擇唯一主鍵儲存到 redis 或者 mongdb 中,先查詢是否存在,若存在則

不處理;若不存在,先插入 redis 或 mongdb,再進行業務邏輯處理)

資料一致性保證

一致性定義:若某條訊息對 client 可見,那麼即使 leader 掛了,在新 leader 上資料依然

可以被讀到

hw-highwatermark: client 可以從 leade

IoT併發問題解決

twisted是用python實現的基於事件驅動的網路引擎框架。twisted誕生於2000 年初,在當時的網路遊戲開發者看來,無論他們使用哪種語言,手中都鮮有可兼顧擴充套件性及跨平台的網路庫。twisted支援許多常見的傳輸及應用層協議,包括tcp udp ssl tls http imap ss...

EAS開發問題解決方案彙總

做了快5年的eas開發,遇到過的問題數不勝數,最近在幫新同事處理問題時發現好多問題是似曾相識的 現將這些問題及解決方法彙總下來,並不斷維護吧。1.開發過程中往往會遇到某些欄位或表不存在的提示,而這些屬性確不是我們開發的,故不知道是那個表少屬性。解決方案 第一步 通過在com.kingdee.bos....

Mysql問題解決思路

資料庫層面 一 檢查問題常用工具 1 msyqladmin mysql客戶端,可進行管理操作 2 mysqlshow 功能強大的檢視shell命令 3 show session global variables 檢視資料庫引數資訊 4 show session global status 檢視資料庫...