我創建了一個訂閱兩個主題TopicA和TopicB的客戶。 當消費者收到來自TopicA的消息時,我的業務邏輯是將ObjectA存儲到MySQL中。 當消費者收到來自TopicB的消息時,我的業務邏輯是更新ObjectA。主題之間的卡夫卡依賴關係
但是現在的問題是: TopicA和TopicB是相互獨立的。 消費者可能會先收到來自TopicB的消息,然後收到TopicA的消息。 當試圖更新ObjectA時,我發現它不存在於mysql中,然後拋出一個NullPointerException異常。
有什麼辦法來配置TopicA和TopicB以確保消息從TopicA接收的第一,然後從TopicB接收。
換句話說,我怎樣才能使主題之間的依賴關係?
數據如何發送到TopicA和TopicB?數據是否保證在TopicB之前發送給TopicA,而您只是想按照正確的順序閱讀它?或者可以在TopicA之前將數據發送到TopicB,並且您只是想確保TopicA在TopicB之前位於TopicB中? – morganw09dev
爲什麼你需要兩個不同的主題?只需使用一個插入對象的主題即可。 –
如果主題分區爲1,則使用一個主題可以解決我的問題。但對於更多的分區,它仍然無法正常工作。 – fcbflying