Распределённое надёжное key-value хранилище для критически важных данных распределённых систем на основе консенсуса Raft с gRPC API.
apache/zookeeper
Apache ZooKeeper — распределённый сервис координации с иерархическим хранилищем «ключ-значение» для конфигурации, именования и синхронизации в распределённых системах.
- Звёзды
- 12,831
- Форки
- 7,325
- Открытые issues
- 243
- Последний коммит
- 20 часов назад
Что это?
Apache ZooKeeper — сервис координации для распределённых приложений, написанный на Java. Он предоставляет общее иерархическое пространство имён с небольшими узлами данных, которые клиенты могут читать, записывать и отслеживать. На его основе приложения могут реализовывать такие механизмы, как управление конфигурацией, обнаружение сервисов и выбор лидера.
Проект распространяется в виде исходного кода, который собирается с помощью Maven, а также бинарных tar-архивов с JAR-файлами, необходимыми для запуска сервера. Начиная с версии 3.5.5, артефакты проекта (модули parent, zookeeper и zookeeper-jute) публикуются в Maven Central, поэтому Java-проекты могут напрямую подключать клиентскую библиотеку.
ZooKeeper — проект верхнего уровня Apache Software Foundation. В репозитории также находятся настройки CI и описание процесса внесения изменений на вики проекта.
Ключевые возможности
- 01Иерархическое пространство имён узлов данных, которые клиенты могут читать, записывать и отслеживать.
- 02Для координации реплицируемого состояния используется протокол консенсуса ZAB.
- 03Клиентские библиотеки доступны через Maven Central начиная с версии 3.5.5.
- 04Бинарные и исходные релизные пакеты собираются с помощью Maven.
Сценарии использования
- Хранение общей конфигурации, которую нескольким сервисам в кластере нужно читать и отслеживать на предмет изменений.
- Реализация обнаружения сервисов или выбора лидера в распределённых приложениях на Java.
- Координация распределённых блокировок и синхронизации между процессами.
Быстрый старт
- 1
Скачайте релиз со страницы релизов ZooKeeper
- 2
Соберите проект из исходного кода с помощью Maven
mvn clean install
Что важно знать
- Для сборки из исходного кода необходимы Java и Maven.
В подборках
Темы
Частые вопросы
- Что такое zookeeper?
- Apache ZooKeeper — распределённый сервис координации с иерархическим хранилищем «ключ-значение» для конфигурации, именования и синхронизации в распределённых системах. Apache ZooKeeper — сервис координации для распределённых приложений, написанный на Java. Он предоставляет общее иерархическое пространство имён с небольшими узлами данных, которые клиенты могут читать, записывать и отслеживать. На его основе приложения могут реализовывать такие механизмы, как управление конфигурацией, обнаружение сервисов и выбор лидера.
- zookeeper можно использовать бесплатно? Какая у него лицензия?
- zookeeper распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- zookeeper всё ещё поддерживается?
- Активно поддерживается. Последний коммит в zookeeper — 6 нояб. 2026 г..
- Для чего можно использовать zookeeper?
- Хранение общей конфигурации, которую нескольким сервисам в кластере нужно читать и отслеживать на предмет изменений. Реализация обнаружения сервисов или выбора лидера в распределённых приложениях на Java. Координация распределённых блокировок и синхронизации между процессами.
- Как установить zookeeper?
- Скачайте релиз со страницы релизов ZooKeeper Соберите проект из исходного кода с помощью Maven: mvn clean install
- Где скачать zookeeper?
- Исходный код и инструкции по установке — на GitHub: https://github.com/apache/zookeeper
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Платформа с открытым исходным кодом для динамического обнаружения сервисов, управления конфигурацией и метаданными сервисов в облачных и микросервисных системах.
Лёгкая отказоустойчивая распределённая реляционная база данных на SQLite с репликацией между узлами через консенсус Raft.
Централизованная система управления конфигурацией микросервисов с обновлениями в реальном времени, версионными релизами, поэтапным развёртыванием и журналом аудита.
Java-реализация Apache Dubbo — RPC- и микросервисного фреймворка для связи между сервисами, обнаружения сервисов и управления трафиком.
Библиотека на Go для реализации консенсуса Raft, управления реплицируемыми журналами и реплицируемыми конечными автоматами.