The Zookeeper class
(PECL zookeeper >= 0.1.0)
简介
Represents ZooKeeper session.
类摘要
预定义常量
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- 
       
Invalid 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.
 
目录
- 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