public interface ZooKeeperSupportCache
final GrizzlyMemcachedCacheManager.Builder managerBuilder = new GrizzlyMemcachedCacheManager.Builder();
// setup zookeeper server
final ZooKeeperConfig zkConfig = ZooKeeperConfig.create("cache-manager", DEFAULT_ZOOKEEPER_ADDRESS);
zkConfig.setRootPath(ROOT);
zkConfig.setConnectTimeoutInMillis(3000);
zkConfig.setSessionTimeoutInMillis(30000);
zkConfig.setCommitDelayTimeInSecs(2);
managerBuilder.zooKeeperConfig(zkConfig);
// create a cache manager
final GrizzlyMemcachedCacheManager manager = managerBuilder.build();
final GrizzlyMemcachedCache.Builder<String, String> cacheBuilder = manager.createCacheBuilder("user");
// setup memcached servers
final Set<SocketAddress> memcachedServers = new HashSet<SocketAddress>();
memcachedServers.add(MEMCACHED_ADDRESS1);
memcachedServers.add(MEMCACHED_ADDRESS2);
cacheBuilder.servers(memcachedServers);
// create a user cache
final GrizzlyMemcachedCache<String, String> cache = cacheBuilder.build();
// ZooKeeperSupportCache's basic operations
if (cache.isZooKeeperSupported()) {
final String serverListPath = cache.getZooKeeperServerListPath();
final String serverList = cache.getCurrentServerListFromZooKeeper();
cache.setCurrentServerListOfZooKeeper("localhost:11211,localhost:11212");
}
// ...
// clean
manager.removeCache("user");
manager.shutdown();
| Modifier and Type | Method and Description |
|---|---|
void |
addZooKeeperListener(BarrierListener listener)
Add the custom
BarrierListener
The given listener will be called after cache's default listener will be completed. |
String |
getCurrentServerListFromZooKeeper()
Return the current cache server list string from the ZooKeeper server
|
String |
getZooKeeperServerListPath()
Return the path of the cache server list which has been registered in the ZooKeeper server
|
boolean |
isZooKeeperSupported()
Check if this cache supports the ZooKeeper for synchronizing the cache server list
|
void |
removeZooKeeperListener(BarrierListener listener)
Remove the custom
BarrierListener
The given listener will be called after cache's default listener will be completed. |
boolean |
setCurrentServerListOfZooKeeper(String cacheServerList)
Set the current cache server list string with the given
cacheServerList
cacheServerList could be comma separated host:port pairs, each corresponding to a memcached server. |
boolean isZooKeeperSupported()
String getZooKeeperServerListPath()
String getCurrentServerListFromZooKeeper()
boolean setCurrentServerListOfZooKeeper(String cacheServerList)
cacheServerList
cacheServerList could be comma separated host:port pairs, each corresponding to a memcached server.
e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002"
Be careful that this operation will propagate cacheServerList to caches which has joinned the same cache name(scope)
because the cache list of ZooKeeper server will be changed.cacheServerList - the cache server list stringvoid addZooKeeperListener(BarrierListener listener)
BarrierListener
The given listener will be called after cache's default listener will be completed.
BarrierListener.onInit(java.lang.String, java.lang.String, byte[]) will be called when this cache will be registered in the ZooKeeper.
BarrierListener.onCommit(java.lang.String, java.lang.String, byte[]) will be called when this cache's server list will be changed in the ZooKeeper.
BarrierListener.onDestroy(java.lang.String) will be called when this cache will be unregistered in the ZooKeeper.listener - the custom listenervoid removeZooKeeperListener(BarrierListener listener)
BarrierListener
The given listener will be called after cache's default listener will be completed.
BarrierListener.onInit(java.lang.String, java.lang.String, byte[]) will be called when this cache will be registered in the ZooKeeper.
BarrierListener.onCommit(java.lang.String, java.lang.String, byte[]) will be called when this cache's server list will be changed in the ZooKeeper.
BarrierListener.onDestroy(java.lang.String) will be called when this cache will be unregistered in the ZooKeeper.listener - the custom listener which was given by addZooKeeperListener(org.glassfish.grizzly.memcached.zookeeper.BarrierListener)Copyright © 2015 Project Grizzly. All Rights Reserved.