Потоковое приложение Kafka с внутренним хранилищем состояний roadsdb не может вернуть данные для ключа - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть приложение kafka stream, работающее с 36 различными экземплярами (по одному для каждого раздела).И я создаю службу отдыха поверх состояния для доступа к данным.

Вот некоторый код для доступа к данным

StreamsMetadata metadata = streams.metadataForKey(store, key, serializer); --> call this find ouy which host has the key
if (localSelf.host().equals(hostStoreInfo.getHost())) {
get the key from local store
}
else {
call the remote host using restTemplate

Теперь проблема в том, что metadata возвращенный объект имеет другойхост / IP, но данные находятся на другом узле.Я мог видеть, используя некоторые журналы приложений, которые я напечатал.

Метод allMetadata в KafkaStreams говорит, что значение будет обновлено, как при переназначении раздела.Но это не происходит в случае.Что я мог сделать.

...