Трансляция мероприятия с зоопарком - PullRequest
0 голосов
/ 05 июля 2018

Я хочу транслировать событие через zookeeper 3.4+.

Допустим, у меня есть несколько продюсеров, которые одновременно увеличивают счетчик, а слушатели наблюдают за этим увеличением.

Я обнаружил, что могу обновить значение znode от производителя, и слушатели будут уведомлены об этих изменениях znode.

Я могу использовать apache curator shared count . Я могу назначить слушателей на этот общий путь общего счета, и если я обновлю (увеличу) значение общего счета, слушатели будут уведомлены.

Также я могу использовать распределенный атомарный длинный и Прослушиватель кэша узлов . Ситуация такая же, я буду создавать это атомное долго на общеизвестном пути. Слушатели будут слушать znode изменения на этом пути. Когда я обновлю атомное длинное значение, слушатели этих значений узла будут уведомлены.

1) Какую структуру зоопарка я должен использовать, например, выше?

2) Могу ли я быть уверенным, что каждое обновление общего подсчета или распределенного атомарного длинного будет транслироваться, и слушатели гарантированно будут уведомлены?

3) Может ли любой слушатель пропустить событие обновления счетчика?

1 Ответ

0 голосов
/ 05 июля 2018

Path Children Cache должен быть выбором. Он является более общим, чем другие, и он лучше, чем Node Cache, поскольку он дает тип события (PathChildrenCacheEvent.Type) - является ли он CONNECTION_RECONNECTED или нет.

Обратитесь к исходному куратору за дополнительной информацией.

...