Я новичок в Zookeeper, поэтому я пытаюсь использовать рецепты куратора, чтобы увидеть, смогу ли я получить свои довольно простые запросы из коробки.
Я пытаюсь использовать класс / рецепт Curator GroupMember, чтобы разделить рабочую нагрузку между узлами. Метод javadoc GroupMember start () говорит: «начать кэширование всех участников» - как мне запросить или получить уведомление, когда все участники будут получены?
Что-то вроде продолжения: я замечаю, что иногда мой вызов groupMember.setData () выдает «первоначальное создание не было обработано. Вызовите waitForInitialCreate (), чтобы убедиться, что» находится на PersistentNode, который даже не предоставляется MemberGroup.
Похоже, мне действительно чего-то не хватает в MemberGroup API :(





Кэширование в Curator использует концепцию «конечной согласованности» - это означает, что получаемые вами значения будут такими, какие бывают в кеше в данный момент. Это довольно хорошо для того, чтобы оставаться в курсе событий; это просто не гарантирует, что то, что вы получите, будет соответствовать последним значениям.
В этом случае «начать кэширование всех элементов» просто означает, что до вызова метода start кеширование не происходило; и после звонка произойдет кеширование. Это не означает, что вам нужно дождаться завершения кеширования, прежде чем вы сможете его использовать, или что-то в этом роде.