2017-07-21 21 views
1

我們正在實施apache kafka作爲分佈式消息中間件,該中間件將被徹底用於異步通信。在apache kafka中複製相關ID類似功能

我有幾個使用案例,我希望能夠發佈消息給卡夫卡經紀人,並聽取對特定消息的回覆(就像我們將在兔子mq中使用相關ID)。

我讀了關於apache kafka協議,好像他們在內部使用相關ID。但是我找不到任何在任何地方使用相關ID的例子。

你可以請建議,如果有辦法做到這一點與Apache卡夫卡?

回答

0

這是他們的網絡通信協議的一部分。

https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol#AGuideToTheKafkaProtocol-Requests

Correlation Id in Apache kafka

這是不是用戶的請求 - 應答場景。

你應該考慮使用的​​某一部分作爲correlationKey跟蹤業務回覆爲業務請求。

自2.0版(開發中)Spring Kafka支持Apache Kafka 0.11及其Headers支持。所以,而不是​​黑客你可以使用一些標題在這個問題上進行關聯。

您也可以跟隨Spring集成Kafka的進展,以獲得網關支持,其中request-reply是主要功能。因此,相關性在那裏非常重要:https://github.com/spring-projects/spring-integration-kafka/pull/162