Curator连接Zookeeper的五种策略:
public CuratorOperator(){
/*
*
* Curator连接Zookeeper的策略:ExponentialBackoffRetry
* baseSleepTimeMs:初始sleep的时间
* maxRetries:最大重试次数
* maxSleepMs:最大重试时间
*
* */
// RetryPolicy retryPolicy1 = new ExponentialBackoffRetry(1000,5);
/*
*
* Curator连接Zookeeper的策略:RetryNTimes
* n:重试次数
* sleepMsBetweenRetries:每次重试间隔的时间
* */
RetryPolicy retryPolicy2 =new RetryNTimes(3,500);
/*
*
* Curator连接Zookeeper的策略:retryPolicy
* sleepMsBetweenRetry:每次重试间隔的时间
* */
// RetryPolicy retryPolicy3 = new RetryOneTime(500);
/*
* Curator连接Zookeeper的策略:RetryForever
* 永远重试,不推荐使用
* */
// RetryPolicy retryPolicy4 = new RetryForever(retryIntervalMs);
/*
*
* Curator连接Zookeeper的策略:RetryUntilElapsed
* maxElapsedTimeMs:最大重试时间
* sleepMsBetweenRetries:每次重试间隔的时间
* 重试时间超过maxElapsedTimeMs后,不在重试
* */
RetryPolicy retryPolicy5 = new RetryUntilElapsed(2000,3000);
client = CuratorFrameworkFactory.builder()
.connectString(zkServerPath)
.sessionTimeoutMs(10000).retryPolicy(retryPolicy2)
.namespace("workspace").build();
client.start();
}