我們正在製作一個卡夫卡隊列,消息從源系統發佈到該卡夫卡隊列中。現在多個消費者可以連接到這個隊列來閱讀消息。在卡夫卡實施唯一的消費者羣組編號
雖然這樣的消費者在此基礎上的消息被分配到指定的groupId,如果兩個應用程序具有相同的groupId他們都不會得到的消息。
有沒有一種方法,我可以強制每一個應用程序。有一個獨特的消費者組織ID?
我們正在製作一個卡夫卡隊列,消息從源系統發佈到該卡夫卡隊列中。現在多個消費者可以連接到這個隊列來閱讀消息。在卡夫卡實施唯一的消費者羣組編號
雖然這樣的消費者在此基礎上的消息被分配到指定的groupId,如果兩個應用程序具有相同的groupId他們都不會得到的消息。
有沒有一種方法,我可以強制每一個應用程序。有一個獨特的消費者組織ID?
不,如果不更改Kafka源代碼,沒有辦法做到這一點,因爲消費者組是Kafka的一個主要(也是非常有價值的)功能,允許您避免使用v0.8中的低級消費者。當你想並行消耗單個主題時(通常來自不同的主機)。
但你也許可以成立一個獨立的服務發出的名稱給消費者。或者你可以指示所有消費者客戶使用隨機數作爲名稱後綴,或類似的東西。
卡夫卡是不是一個命名註冊表,但也有可能使用到沒有協調分配唯一的組名其他許多策略:
在想這會是一個常見的問題。另外,我想要一種有效的自動化方式,而不是僅僅告訴人們使用某些東西。 – nikel
是的,AFAIK沒有這樣的東西存在,所以這些是我可以提供的最好的。你可以關閉這個問題嗎? –