The Zookeeper class
(PECL zookeeper >= 0.1.0)
Introduction
Represents ZooKeeper session.
Class synopsis
$host
= ''
[, callable $watcher_cb
= NULL
[, int $recv_timeout
= 10000
]]] )$host
[, callable $watcher_cb
= NULL
[, int $recv_timeout
= 10000
]] ) : void$path
[, callable $watcher_cb
= NULL
[, array &$stat
= NULL
[, int $max_size
= 0
]]] ) : stringPredefined Constants
ZooKeeper Permissions
Zookeeper::PERM_READ
-
Can read nodes value and list its children
Zookeeper::PERM_WRITE
-
Can set the nodes value
Zookeeper::PERM_CREATE
-
Can create children
Zookeeper::PERM_DELETE
-
Can delete children
Zookeeper::PERM_ADMIN
-
Can execute set_acl()
Zookeeper::PERM_ALL
-
All of the above flags ORd together
ZooKeeper Create Flags
Zookeeper::EPHEMERAL
-
If Zookeeper::EPHEMERAL flag is set, the node will automatically get removed if the client session goes away.
Zookeeper::SEQUENCE
-
If the Zookeeper::SEQUENCE flag is set, a unique monotonically increasing sequence number is appended to the path name. The sequence number is always fixed length of 10 digits, 0 padded.
ZooKeeper Log Levels
Zookeeper::LOG_LEVEL_ERROR
-
Outputs only error mesages
Zookeeper::LOG_LEVEL_WARN
-
Outputs errors/warnings
Zookeeper::LOG_LEVEL_INFO
-
Outputs big action messages besides errors/warnings
Zookeeper::LOG_LEVEL_DEBUG
-
Outputs all
ZooKeeper States
Zookeeper::EXPIRED_SESSION_STATE
-
Connected but session expired
Zookeeper::AUTH_FAILED_STATE
-
Connected but auth failed
Zookeeper::CONNECTING_STATE
-
Connecting
Zookeeper::ASSOCIATING_STATE
-
Associating
Zookeeper::CONNECTED_STATE
-
Connected
Zookeeper::READONLY_STATE
-
TODO: help us improve this extension.
Zookeeper::NOTCONNECTED_STATE
-
Connection failed
ZooKeeper Watch Types
Zookeeper::CREATED_EVENT
-
A node has been created
This is only generated by watches on non-existent nodes. These watches are set using Zookeeper::exists.
Zookeeper::DELETED_EVENT
-
A node has been deleted
This is only generated by watches on nodes. These watches are set using Zookeeper::exists and Zookeeper::get.
Zookeeper::CHANGED_EVENT
-
A node has changed
This is only generated by watches on nodes. These watches are set using Zookeeper::exists and Zookeeper::get.
Zookeeper::CHILD_EVENT
-
A change as occurred in the list of children
This is only generated by watches on the child list of a node. These watches are set using Zookeeper::getChildren.
Zookeeper::SESSION_EVENT
-
A session has been lost
This is generated when a client loses contact or reconnects with a server.
Zookeeper::NOTWATCHING_EVENT
-
A watch has been removed
This is generated when the server for some reason, probably a resource constraint, will no longer watch a node for a client.
ZooKeeper System and Server-side Errors
Zookeeper::SYSTEMERROR
-
This is never thrown by the server, it shouldn't be used other than to indicate a range. Specifically error codes greater than this value, but lesser than Zookeeper::APIERROR, are system errors.
Zookeeper::RUNTIMEINCONSISTENCY
-
A runtime inconsistency was found.
Zookeeper::DATAINCONSISTENCY
-
A data inconsistency was found.
Zookeeper::CONNECTIONLOSS
-
Connection to the server has been lost.
Zookeeper::MARSHALLINGERROR
-
Error while marshalling or unmarshalling data.
Zookeeper::UNIMPLEMENTED
-
Operation is unimplemented.
Zookeeper::OPERATIONTIMEOUT
-
Operation timeout.
Zookeeper::BADARGUMENTS
-
Invalid arguments.
Zookeeper::INVALIDSTATE
-
Invliad zhandle state.
Zookeeper::NEWCONFIGNOQUORUM
-
No quorum of new config is connected and up-to-date with the leader of last committed config - try invoking reconfiguration after new servers are connected and synced.
Available as of ZooKeeper 3.5.0
Zookeeper::RECONFIGINPROGRESS
-
Reconfiguration requested while another reconfiguration is currently in progress. This is currently not supported. Please retry.
Available as of ZooKeeper 3.5.0
ZooKeeper API Errors
Zookeeper::OK
-
Everything is OK.
Zookeeper::APIERROR
-
This is never thrown by the server, it shouldn't be used other than to indicate a range. Specifically error codes greater than this value are API errors (while values less than this indicate a Zookeeper::SYSTEMERROR).
Zookeeper::NONODE
-
Node does not exist.
Zookeeper::NOAUTH
-
Not authenticated.
Zookeeper::BADVERSION
-
Version conflict.
Zookeeper::NOCHILDRENFOREPHEMERALS
-
Ephemeral nodes may not have children.
Zookeeper::NODEEXISTS
-
The node already exists.
Zookeeper::NOTEMPTY
-
The node has children.
Zookeeper::SESSIONEXPIRED
-
The session has been expired by the server.
Zookeeper::INVALIDCALLBACK
-
Invalid callback specified.
Zookeeper::INVALIDACL
-
Invalid ACL specified.
Zookeeper::AUTHFAILED
-
Client authentication failed.
Zookeeper::CLOSING
-
ZooKeeper is closing.
Zookeeper::NOTHING
-
(not error) No server responses to process.
Zookeeper::SESSIONMOVED
-
Session moved to another server, so operation is ignored.
Zookeeper::NOTREADONLY
-
State-changing request is passed to read-only server.
Zookeeper::EPHEMERALONLOCALSESSION
-
Attempt to create ephemeral node on a local session.
Zookeeper::NOWATCHER
-
The watcher couldn't be found.
Zookeeper::RECONFIGDISABLED
-
Attempts to perform a reconfiguration operation when reconfiguration feature is disabled.
Table of Contents
- Zookeeper::addAuth — Specify application credentials
- Zookeeper::close — Close the zookeeper handle and free up any resources
- Zookeeper::connect — Create a handle to used communicate with zookeeper
- Zookeeper::__construct — Create a handle to used communicate with zookeeper
- Zookeeper::create — Create a node synchronously
- Zookeeper::delete — Delete a node in zookeeper synchronously
- Zookeeper::exists — Checks the existence of a node in zookeeper synchronously
- Zookeeper::get — Gets the data associated with a node synchronously
- Zookeeper::getAcl — Gets the acl associated with a node synchronously
- Zookeeper::getChildren — Lists the children of a node synchronously
- Zookeeper::getClientId — Return the client session id, only valid if the connections is currently connected (ie. last watcher state is ZOO_CONNECTED_STATE)
- Zookeeper::getConfig — Get instance of ZookeeperConfig
- Zookeeper::getRecvTimeout — Return the timeout for this session, only valid if the connections is currently connected (ie. last watcher state is ZOO_CONNECTED_STATE). This value may change after a server re-connect
- Zookeeper::getState — Get the state of the zookeeper connection
- Zookeeper::isRecoverable — Checks if the current zookeeper connection state can be recovered
- Zookeeper::set — Sets the data associated with a node
- Zookeeper::setAcl — Sets the acl associated with a node synchronously
- Zookeeper::setDebugLevel — Sets the debugging level for the library
- Zookeeper::setDeterministicConnOrder — Enable/disable quorum endpoint order randomization
- Zookeeper::setLogStream — Sets the stream to be used by the library for logging
- Zookeeper::setWatcher — Set a watcher function
Vertaling niet beschikbaar
De PHP-handleiding is nog niet in het Nederlands vertaald, dus het scherm is in het Engels. Als u wilt, kunt u het ook in het Frans of in het Duits raadplegen.
Als je de moed voelt, kun je je vertaling aanbieden ;-)
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 30/01/2003 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/php-rf-class.zookeeper.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.