La classe Zookeeper

(PECL zookeeper >= 0.1.0)

Introduction

Représente une session ZooKeeper.

Synopsis de la classe

class Zookeeper {
/* Méthodes */
public function __construct(string $host = '', callable $watcher_cb = null, int $recv_timeout = 10000)
public function addAuth(string $scheme, string $cert, callable $completion_cb = null): bool
public function close(): void
public function connect(string $host, callable $watcher_cb = null, int $recv_timeout = 10000): void
public function create(
    string $path,
    string $value,
    array $acls,
    int $flags = null
): string
public function delete(string $path, int $version = -1): bool
public function exists(string $path, callable $watcher_cb = null): array
public function get(
    string $path,
    callable $watcher_cb = null,
    array &$stat = null,
    int $max_size = 0
): string
public function getAcl(string $path): array
public function getChildren(string $path, callable $watcher_cb = null): array
public function getClientId(): int
public function getConfig(): ZookeeperConfig
public function getRecvTimeout(): int
public function getState(): int
public function isRecoverable(): bool
public function set(
    string $path,
    string $value,
    int $version = -1,
    array &$stat = null
): bool
public function setAcl(string $path, int $version, array $acl): bool
public static function setDebugLevel(int $logLevel): bool
public static function setDeterministicConnOrder(bool $yesOrNo): bool
public function setLogStream(resource $stream): bool
public function setWatcher(callable $watcher_cb): bool
/* Constantes */
const int PERM_READ = 1;
const int PERM_WRITE = 2;
const int PERM_CREATE = 4;
const int PERM_DELETE = 8;
const int PERM_ADMIN = 16;
const int PERM_ALL = 31;
const int EPHEMERAL = 1;
const int SEQUENCE = 2;
const int LOG_LEVEL_ERROR = 1;
const int LOG_LEVEL_WARN = 2;
const int LOG_LEVEL_INFO = 3;
const int LOG_LEVEL_DEBUG = 4;
const int AUTH_FAILED_STATE = -113;
const int CONNECTED_STATE = 3;
const int READONLY_STATE = 5;
const int NOTCONNECTED_STATE = 999;
const int CREATED_EVENT = 1;
const int DELETED_EVENT = 2;
const int CHANGED_EVENT = 3;
const int CHILD_EVENT = 4;
const int SESSION_EVENT = -1;
const int SYSTEMERROR = -1;
const int CONNECTIONLOSS = -4;
const int MARSHALLINGERROR = -5;
const int UNIMPLEMENTED = -6;
const int OPERATIONTIMEOUT = -7;
const int BADARGUMENTS = -8;
const int INVALIDSTATE = -9;
const int NEWCONFIGNOQUORUM = -13;
const int RECONFIGINPROGRESS = -14;
const int OK = 0;
const int APIERROR = -100;
const int NONODE = -101;
const int NOAUTH = -102;
const int BADVERSION = -103;
const int NODEEXISTS = -110;
const int NOTEMPTY = -111;
const int SESSIONEXPIRED = -112;
const int INVALIDCALLBACK = -113;
const int INVALIDACL = -114;
const int AUTHFAILED = -115;
const int CLOSING = -116;
const int NOTHING = -117;
const int SESSIONMOVED = -118;
const int NOTREADONLY = -119;
const int NOWATCHER = -121;
const int RECONFIGDISABLED = -122;
}

Constantes pré-définies

Permissions de ZooKeeper

Zookeeper::PERM_READ

Peut lire la valeur des nƓuds et lister ses enfants

Zookeeper::PERM_WRITE

Peut modifier la valeur des nƓuds

Zookeeper::PERM_CREATE

Peut créer des enfants

Zookeeper::PERM_DELETE

Peut supprimer des enfants

Zookeeper::PERM_ADMIN

Peut exécuter set_acl()

Zookeeper::PERM_ALL

Tous les flags ci-dessus ORd ensemble

Drapeaux de création ZooKeeper

Zookeeper::EPHEMERAL

Si le drapeau Zookeeper::EPHEMERAL est mis, le nƓud sera automatiquement supprimĂ© si la session du client est perdue.

Zookeeper::SEQUENCE

Si le drapeau Zookeeper::SEQUENCE est mis, un numĂ©ro de sĂ©quence unique et croissant est ajoutĂ© au nom du nƓud. Le numĂ©ro de sĂ©quence est toujours de 10 chiffres, complĂ©tĂ© par des zĂ©ros.

Niveaux de journalisation ZooKeeper

Zookeeper::LOG_LEVEL_ERROR
Sortie des messages d'erreur uniquement
Zookeeper::LOG_LEVEL_WARN

Sortie des messages d'erreur et d'avertissement

Zookeeper::LOG_LEVEL_INFO

Sortie des messages d'action importante en plus des erreurs et avertissements

Zookeeper::LOG_LEVEL_DEBUG

Sortie de tous les messages

États ZooKeeper

Zookeeper::EXPIRED_SESSION_STATE

Connecté mais la session a expiré

Zookeeper::AUTH_FAILED_STATE

Connecté mais l'authentification a échoué

Zookeeper::CONNECTING_STATE

Connexion en cours

Zookeeper::ASSOCIATING_STATE

Association en cours

Zookeeper::CONNECTED_STATE

Connecté

Zookeeper::READONLY_STATE

TODO: aidez nous à améliorer cette extension.

Zookeeper::NOTCONNECTED_STATE

La connexion a échoué

Types d'observateurs ZooKeeper

Zookeeper::CREATED_EVENT

Un nƓud a Ă©tĂ© créé

Ceci est gĂ©nĂ©rĂ© uniquement par les observateurs sur des nƓuds inexistants. Ces observateurs sont dĂ©finis en utilisant Zookeeper::exists.

Zookeeper::DELETED_EVENT

Un nƓud a Ă©tĂ© supprimĂ©

Ceci est gĂ©nĂ©rĂ© uniquement par les observateurs sur des nƓuds. Ces observateurs sont dĂ©finis en utilisant Zookeeper::exists et Zookeeper::get.

Zookeeper::CHANGED_EVENT

Un nƓud a Ă©tĂ© changĂ©

Ceci est gĂ©nĂ©rĂ© uniquement par les observateurs sur des nƓuds. Ces observateurs sont dĂ©finis en utilisant Zookeeper::exists et Zookeeper::get.

Zookeeper::CHILD_EVENT
Un changement a eu lieu dans la liste des enfants

Ceci est gĂ©nĂ©rĂ© uniquement par les observateurs sur la liste des enfants d'un nƓud. Ces observateurs sont dĂ©finis en utilisant Zookeeper::getChildren.

Zookeeper::SESSION_EVENT

Une session a été perdue

Ceci est généré lorsqu'un client perd le contact ou se reconnecte avec un serveur.

Zookeeper::NOTWATCHING_EVENT

Un observateur a été supprimé

Ceci est gĂ©nĂ©rĂ© lorsque le serveur pour une raison quelconque, probablement une contrainte de ressource, ne surveillera plus un nƓud pour un client.

Erreurs systÚmes et cÎté serveur ZooKeeper

Zookeeper::SYSTEMERROR

Ceci n'est jamais gĂ©nĂ©rĂ© par le serveur, il ne devrait pas ĂȘtre utilisĂ© autrement que pour indiquer une plage. SpĂ©cifiquement les codes d'erreurs supĂ©rieurs Ă  cette valeur, mais infĂ©rieurs Ă  Zookeeper::APIERROR, sont des erreurs systĂšmes.

Zookeeper::RUNTIMEINCONSISTENCY

Une incohérence d'exécution a été trouvée.

Zookeeper::DATAINCONSISTENCY

Une incohérence de données a été trouvée.

Zookeeper::CONNECTIONLOSS

La connexion au serveur a été perdue

Zookeeper::MARSHALLINGERROR

Erreur lors de la sérialisation ou désérialisation des données.

Zookeeper::UNIMPLEMENTED

L'opération n'est pas implémentée.

Zookeeper::OPERATIONTIMEOUT

L'opération a expiré.

Zookeeper::BADARGUMENTS

Arguments invalides.

Zookeeper::INVALIDSTATE

État zhandle invalide.

Zookeeper::NEWCONFIGNOQUORUM

Aucun quorum de la nouvelle configuration n'est connecté et à jour avec le leader de la derniÚre configuration validée - essayez d'invoquer la reconfiguration aprÚs que les nouveaux serveurs soient connectés et synchronisés.

Disponible Ă  partir de ZooKeeper 3.5.0

Zookeeper::RECONFIGINPROGRESS

Reconfiguration demandée alors qu'une autre reconfiguration est en cours. Ceci n'est actuellement pas supporté. Il convient de réessayer.

Disponible Ă  partir de ZooKeeper 3.5.0

Erreurs d'API ZooKeeper

Zookeeper::OK

Tout est OK.

Zookeeper::APIERROR

Ceci n'est jamais gĂ©nĂ©rĂ© par le serveur, il ne devrait pas ĂȘtre utilisĂ© autrement que pour indiquer une plage. SpĂ©cifiquement les codes d'erreurs supĂ©rieurs Ă  cette valeur sont des erreurs d'api (tandis que les valeurs infĂ©rieures indiquent une Zookeeper::SYSTEMERROR).

Zookeeper::NONODE

Le nƓud n'existe pas.

Zookeeper::NOAUTH

Non authentifié.

Zookeeper::BADVERSION

Conflit de version.

Zookeeper::NOCHILDRENFOREPHEMERALS

Les nƓuds Ă©phĂ©mĂšres ne peuvent pas avoir d'enfants.

Zookeeper::NODEEXISTS

Le nƓud existe dĂ©jĂ .

Zookeeper::NOTEMPTY

Le nƓud a des enfants.

Zookeeper::SESSIONEXPIRED

La session a expiré par le serveur.

Zookeeper::INVALIDCALLBACK

Fonction de rappel spécifiée invalide.

Zookeeper::INVALIDACL

ACL spécifiée invalide.

Zookeeper::AUTHFAILED

L'authentification du client a échoué.

Zookeeper::CLOSING

ZooKeeper est en train de fermer.

Zookeeper::NOTHING

(pas une erreur) Aucune réponse du serveur à traiter.

Zookeeper::SESSIONMOVED

La session a été déplacée vers un autre serveur, donc l'opération est ignorée.

Zookeeper::NOTREADONLY

RequĂȘte de changement d'Ă©tat passĂ©e Ă  un serveur en lecture seule.

Zookeeper::EPHEMERALONLOCALSESSION

Tentative de crĂ©ation de nƓud Ă©phĂ©mĂšre sur une session locale.

Zookeeper::NOWATCHER

L'observateur n'a pas été trouvé.

Zookeeper::RECONFIGDISABLED

Tentative de réaliser une opération de reconfiguration alors que la fonctionnalité de reconfiguration est désactivée.

Sommaire

  • Zookeeper::addAuth — SpĂ©cifie les informations d'authentification de l'application
  • Zookeeper::close — Ferme la connexion au serveur ZooKeeper et libĂšre les ressources associĂ©es
  • Zookeeper::connect — CrĂ©e un gestionnaire utilisĂ© pour communiquer avec zookeeper
  • Zookeeper::__construct — CrĂ©er une connexion pour communiquer avec Zookeeper
  • Zookeeper::create — CrĂ©er un nƓud de maniĂšre synchrone
  • Zookeeper::delete — EnlĂšve un nƓud de maniĂšre synchrone
  • Zookeeper::exists — VĂ©rifie l'existence d'un nƓud de maniĂšre synchrone
  • Zookeeper::get — Renvoie les donnĂ©es associĂ©es Ă  un nƓud de maniĂšre synchrone
  • Zookeeper::getAcl — Renvoie les ACL associĂ©es Ă  un nƓud de maniĂšre synchrone
  • Zookeeper::getChildren — Liste les enfants d'un nƓud de maniĂšre synchrone
  • Zookeeper::getClientId — Renvoie l'identifiant de session client, uniquement valide si la connexion est actuellement Ă©tablie (c'est-Ă -dire si le dernier Ă©tat de l'observateur est ZOO_CONNECTED_STATE)
  • Zookeeper::getConfig — Renvoie l'instance de ZookeeperConfig
  • Zookeeper::getRecvTimeout — Renvoie le dĂ©lai d'attente pour cette session, uniquement valide si la connexion est actuellement Ă©tablie (c'est-Ă -dire si le dernier Ă©tat de l'observateur est ZOO_CONNECTED_STATE). Cette valeur peut changer aprĂšs une reconnexion au serveur
  • Zookeeper::getState — Renvoie l'Ă©tat de la connexion zookeeper
  • Zookeeper::isRecoverable — VĂ©rifie si l'Ă©tat de connexion zookeeper actuel peut ĂȘtre rĂ©cupĂ©rĂ©
  • Zookeeper::set — DĂ©finit les donnĂ©es associĂ©es Ă  un nƓud
  • Zookeeper::setAcl — DĂ©finit l'ACL associĂ© Ă  un nƓud de maniĂšre synchrone
  • Zookeeper::setDebugLevel — DĂ©finit le niveau de dĂ©bogage pour la bibliothĂšque
  • Zookeeper::setDeterministicConnOrder — Active/dĂ©sactive la randomisation de l'ordre des points de terminaison du quorum
  • Zookeeper::setLogStream — DĂ©finit le flux Ă  utiliser par la bibliothĂšque pour le journal
  • Zookeeper::setWatcher — DĂ©finit une fonction d'observation
add a note

User Contributed Notes

There are no user contributed notes for this page.