Класс Zookeeper
(PECL zookeeper >= 0.1.0)
Введение
Представляет сессию ZooKeeper.
Обзор классов
Предопределенные константы
Разрешения ZooKeeper
Zookeeper::PERM_READ
-
Можно читать значение узла и список дочерних узлов
Zookeeper::PERM_WRITE
-
Можно устанавливать значение узла
Zookeeper::PERM_CREATE
-
Можно создавать дочерние элементы
Zookeeper::PERM_DELETE
-
Можно удалять дочерние элементы
Zookeeper::PERM_ADMIN
-
Можно запускать set_acl()
Zookeeper::PERM_ALL
-
Можно использовать все вышеуказанные флаги вместе
Флаги создания ZooKeeper
Zookeeper::EPHEMERAL
-
Если установлен флаг Zookeeper::EPHEMERAL, узел будет автоматически удален по завершению клиентской сессии.
Zookeeper::SEQUENCE
-
Если установлен флаг Zookeeper::SEQUENCE, к имени пути будет добавляться уникальный номер из монотонно возрастающей последовательности. Номер из последовательности всегда имеет фиксированную длину в 10 цифр, дополненную лидирующими нулями по необходимости.
Уровень логирования ZooKeeper
Zookeeper::LOG_LEVEL_ERROR
-
Выводить только сообщения об ошибках
Zookeeper::LOG_LEVEL_WARN
-
Выводить ошибки и предупреждения
Zookeeper::LOG_LEVEL_INFO
-
Выводить большие сообщения о действиях помимо ошибок и предупреждений
Zookeeper::LOG_LEVEL_DEBUG
-
Выводить все
Состояния ZooKeeper
Zookeeper::EXPIRED_SESSION_STATE
-
Соединение установлено, но сессия истекла
Zookeeper::AUTH_FAILED_STATE
-
Соединение установлено, но аутентификация неудачная
Zookeeper::CONNECTING_STATE
-
Устанавливается соединение
Zookeeper::ASSOCIATING_STATE
-
Ассоциирование
Zookeeper::CONNECTED_STATE
-
Соединение установлено
Zookeeper::READONLY_STATE
-
TODO: помогите нам улучшить это расширение
Zookeeper::NOTCONNECTED_STATE
-
Соединение не установлено
Типы событий ZooKeeper
Zookeeper::CREATED_EVENT
-
Узел был создан
Генерируется только путем наблюдения за несуществующими узлами. Эти наблюдатели задаются с помощью Zookeeper::exists.
Zookeeper::DELETED_EVENT
-
Узел был удален
Генерируется только путем наблюдения за узлами. Эти наблюдатели задаются с помощью Zookeeper::exists и Zookeeper::get.
Zookeeper::CHANGED_EVENT
-
Узел был изменен
Генерируется только путем наблюдения за узлами. Эти наблюдатели задаются с помощью Zookeeper::exists и Zookeeper::get.
Zookeeper::CHILD_EVENT
-
Произошло изменение в списке дочерних узлов
Генерируется только путем наблюдения за списком дочерних узлов. Эти наблюдатели задаются с помощью Zookeeper::getChildren.
Zookeeper::SESSION_EVENT
-
Сессия была потеряна
Генерируется когда коиент потерял соединение с сервером, либо инициировал пересоединение.
Zookeeper::NOTWATCHING_EVENT
-
Наблюдатель был удален
Генерируется сервером по разным причинам, например связанным с ограничением ресурса, и говорит о том, что дальнейшее наблюдение за узлом невозможно.
Системные ошибки и ошибки на стороне сервера ZooKeeper
Zookeeper::SYSTEMERROR
-
Никогда не выбрасывается сервером и может использоваться только для ограничения диапазона кодов ошибок. Все ошибки большие этой, но меньшие Zookeeper::APIERROR, являются системными ошибками.
Zookeeper::RUNTIMEINCONSISTENCY
-
Обнаружена несогласованность во время выполнения.
Zookeeper::DATAINCONSISTENCY
-
Обнаружена несогласованность данных.
Zookeeper::CONNECTIONLOSS
-
Потеряно соединение с сервером.
Zookeeper::MARSHALLINGERROR
-
Ошибка при маршалинге и демаршалинге данных.
Zookeeper::UNIMPLEMENTED
-
Операция не реализована.
Zookeeper::OPERATIONTIMEOUT
-
Превышение времени ожидания операции.
Zookeeper::BADARGUMENTS
-
Некорректный аргумент.
Zookeeper::INVALIDSTATE
-
Некорректный статус zhandle.
Zookeeper::NEWCONFIGNOQUORUM
-
Кворум новой конфигурации не подключен и не синхронизирован с лидером последней подтвержденной конфигурации. Попробуйте запустить переконфигурацию после подключения и синхронизации новых серверов.
Доступно с версии ZooKeeper 3.5.0
Zookeeper::RECONFIGINPROGRESS
-
Запрос переконфигурации во время работы другого процесса переконфигурации. В данный момент не поддерживается. Попробуйте повторить позже.
Доступно с версии ZooKeeper 3.5.0
ZooKeeper API Errors
Zookeeper::OK
-
Все хорошо.
Zookeeper::APIERROR
-
Никогда не выбрасывается сервером и может использоваться только для ограничения диапазона кодов ошибок. Все ошибки большие этой, являются ошибками API (значения меньшие данного означают системные ошибки).
Zookeeper::NONODE
-
Узел отсутствует.
Zookeeper::NOAUTH
-
Отсутствует аутентификация.
Zookeeper::BADVERSION
-
Конфликт версий.
Zookeeper::NOCHILDRENFOREPHEMERALS
-
Эфемерные узлы не должны иметь потомков.
Zookeeper::NODEEXISTS
-
Узел уже существует.
Zookeeper::NOTEMPTY
-
Узел имеет потомков.
Zookeeper::SESSIONEXPIRED
-
Срок действия сессии истек.
Zookeeper::INVALIDCALLBACK
-
Задана некорректная функция обратного вызова.
Zookeeper::INVALIDACL
-
Задан некорректный ACL.
Zookeeper::AUTHFAILED
-
Неудачная аутентификация клиента.
Zookeeper::CLOSING
-
ZooKeeper закрывается.
Zookeeper::NOTHING
-
(не ошибка) Никакакого ответа от сервера для обработки.
Zookeeper::SESSIONMOVED
-
Сессия перемещена на другой сервер, таким образом операция проигнорирована.
Zookeeper::NOTREADONLY
-
Запрос изменения статуса отправлен на сервер с режимом "только чтение".
Zookeeper::EPHEMERALONLOCALSESSION
-
Попытка создать эфемерный узел в локальной сессии.
Zookeeper::NOWATCHER
-
Невозможно найти наблюдателя.
Zookeeper::RECONFIGDISABLED
-
Попытка произвести операцию переконфигурации в случае если она запрещена.
Содержание
- Zookeeper::addAuth — Указывает учетные данные приложения
- Zookeeper::close — Закрывает обработчик zookeeper и освобождает любые ресурсы
- Zookeeper::connect — Создает дескриптор для общения с zookeeper
- Zookeeper::__construct — Создает дескриптор для общения с zookeeper
- Zookeeper::create — Создает синхронно узел
- Zookeeper::delete — Удаляет синхронно узел в zookeeper
- Zookeeper::exists — Синхронно проверяет наличие узла в zookeeper
- Zookeeper::get — Синхронно получает данные, связанные с узлом
- Zookeeper::getAcl — Синхронно получает ACL, связанный с узлом
- Zookeeper::getChildren — Выводит список потомков узла синхронно
- Zookeeper::getClientId — Возвращает идентификатор сессии клиента, действителен только в том случае, если соединения в настоящее время подключены (т.е. последнее состояние наблюдателя - ZOO_CONNECTED_STATE)
- Zookeeper::getConfig — Получает экземпляр ZookeeperConfig
- Zookeeper::getRecvTimeout — Возвращает время ожидания для сессии, действительный, только если соединения в настоящее время подключены (т.е. последнее состояние наблюдателя - ZOO_CONNECTED_STATE). Это значение может измениться после повторного подключения к серверу
- Zookeeper::getState — Получает состояние соединения zookeeper
- Zookeeper::isRecoverable — Проверяет, можно ли восстановить текущее состояние подключения ZooKeeper
- Zookeeper::set — Устанавливает данные, связанные с узлом
- Zookeeper::setAcl — Устанавливает ACL, связанный с узлом синхронно
- Zookeeper::setDebugLevel — Устанавливает уровень логирования для библиотеки
- Zookeeper::setDeterministicConnOrder — Включение/отключение рандомизации порядка конечных точек кворума
- Zookeeper::setLogStream — Устанавливает поток, который будет использоваться библиотекой для логирования
- Zookeeper::setWatcher — Устанавливает функцию наблюдателя