Реальное использование зоопарка [закрыто]


Я смотрел на Zookeeper недавно и задавался вопросом, использует ли кто-нибудь его в настоящее время и что они специально используют его для хранения.

наиболее распространенным вариантом использования является информация о конфигурации, но какие данные и сколько данных вы храните?

13 122

13 ответов:

The реализация Apache CXF DOSGi использует zookeeper для своей службы регистрации репозитория. Отдельные контейнеры имеют пакет распределенного программного обеспечения (dsw), который прослушивает все события службы и при изменении состояния службы имеет свойство, указывающее распределение. Dsw обращается к пакету обнаружения, который в случае ссылочной реализации использует zookeeper для хранения службы в качестве эфемерных узлов. Другие экземпляры будут искать изменения в структуре узла и регистрировать прокси на своих локальных системах. Конечный результат - вы можете закодировать простой OSGi и получить прозрачное распределение.

HBase использует Zookeeper для координации деятельности его "головной узел" отвечал за до текущей версии. Переход к использованию Zookeeper означает, что Центральное управление больше не является единственной точкой отказа.

Zookeeper очень универсален; вот пример его использования для создания распределенной параллельной очереди:

http://blog.cloudera.com/blog/2009/05/building-a-distributed-concurrent-queue-with-apache-zookeeper/

вы можете курс также использует его для создания блокировок ресурсов и т. д. В распределенной системе.

старый вопрос, но поскольку эта страница появляется сначала в поиске google для случаев использования zookeeper, я решил, что было бы лучше дать обновленный список

  1. Википедия
  2. zookeeper wiki
  3. реальных пользователей

Норберт хороший пример из масштабируемой системы производства. Я вообще, он интегрирует Netty, буферы протокола и Zookeeper в облегченную структуру для запуска кластерных служб. Буферы протокола используются для указания API службы, Netty реализует абстракции транспортного уровня, а Zookeeper-это, по сути, отказоустойчивая служба обнаружения.

каждый раз при запуске экземпляра службы Норберт регистрирует его как доступный экземпляр конкретного тип службы. С точки зрения реализации, он создает два дерева Zookeeper:

  • " / ServiceName / members", в котором перечислены все известные экземпляры службы
  • "/ServiceName / available", в котором перечислены доступные в настоящее время экземпляры службы

наиболее важным свойством для каждого узла является url-адрес, используемый для подключения к соответствующему экземпляру службы. Это позволяет балансировать нагрузку на стороне клиента-клиент Norbert находит список URL-адресов для a заданное имя службы и попытка подключиться к одному из них-это некоторый порядок (например, циклический или случайный).

Solr также работа по интеграции ZooKeeper. Здесь вы можете увидеть, что они используют для динамической конфигурации, сегментирования, устранения SPOF (master/slave election), перебалансировки и т. д.

есть хорошая статья ZooKeeper-Король координации о смотрителе зоопарка в найденном.

  • шторм используется a ряд компаний (Twitter и Groupon являются двумя из более известных) и полагается на Zookeeper.
  • Кафка используется Linkedin и полагается на Zookeeper.

шторм использует Zookeeper для хранения всех состояний, чтобы он мог восстанавливаться после сбоя в любой из своих (распределенных) компонентных служб.

это позволяет службам компонентов быть без состояния и просто загрузите или синхронизируйте с серверами Zookeeper, когда необходимы данные конфигурации. Если вам когда-либо приходилось восстанавливать рабочий сервер, вы будете знать, что это может быть головная боль!

Кафка потребители очереди могут использовать Zookeeper для хранения информации (высокая отметка воды) о том, что было потреблено из очереди.

Zookeeper был использован для многих вещей, кроме конфигурации. Вот официальный список реализации распределенных примитивов с помощью zookeeper.

http://zookeeper.apache.org/doc/trunk/recipes.html

в моем случае мы храним конфигурационные файлы в ZooKeeper ensemble для использования в кластере . Мы используем схему лидер - > последователь . Поэтому, когда один Зооконтроль вниз, мы переключаемся на другой (реплицированный режим)

Neo4j использует Zookeeper их высокая доступность enterprise server! http://docs.neo4j.org/chunked/milestone/ha.html

datomic использует apache zookeeper для управления хранилищем данных на основе riak.

поскольку в настоящее время Riak поддерживает только возможную согласованность, система Datomic, работающая на Riak, также использует Apache ZooKeeper, высокодоступную службу координации. Datomic использует ZooKeeper для координации отработки отказа транзактора и для нескольких ключей для каждой базы данных, которые необходимо обновить с помощью CAS. источник: http://blog.datomic.com/2012/11/riak-and-couchbase-support.html

вот подробно о том, как HBase использует ZooKeeper, в том числе информацию о том, как они намерены использовать его в будущем. Обычно они используют его для устранения SPOF на серверах региона через выборы лидера, реализованные с помощью ZooKeeper.