У меня есть приложение 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
говорит, что значение будет обновлено, как при переназначении раздела.Но это не происходит в случае.Что я мог сделать.