Мы осуществляем переход от Zookeeper к Consul для управления динамической конфигурацией ключа. Мы используем OrbitzWorldwide client, и мы хотели бы использовать возможности своих часов для подписки на изменения с ключом. Однако мы не знаем, как это сделать.Наблюдение за изменениями на конкретном ключе в консуле с использованием консула-клиента OrbitzWorld
Zookeeper имеет встроенную поддержку часов. Например:
curator.getData()
.usingWatcher(watcher)
.forPath(path);
В клиенте OrbitzWorldwide в есть объект KVCache который поддерживает слушатель, но один из требуемых параметров watchSeconds и это не ясно, что происходит, когда тайм-аут достигает? Должны ли мы снова подписаться?
Пример кода с использованием клиента OrbitzWorldwide в:
KVCache kvCache = KVCache.newCache(consul.keyValueClient(), path, watchSeconds);
kvCache.addListener(new ConsulCache.Listener<String, Value>() {
public void notify(Map<String, Value> map) {
// Key changed
}
});
kvCache.start();
Есть ли кто-нибудь здесь с опытом работы в этой библиотеке, что может сказать нам, как мы можем использовать его, чтобы следить за изменениями на ключ? Можете ли вы порекомендовать другого клиента с лучшей поддержкой часов?