本文整理汇总了Java中org.apache.bookkeeper.conf.ClientConfiguration.setZkTimeout方法的典型用法代码示例。如果您正苦于以下问题:Java ClientConfiguration.setZkTimeout方法的具体用法?Java ClientConfiguration.setZkTimeout怎么用?Java ClientConfiguration.setZkTimeout使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.bookkeeper.conf.ClientConfiguration
的用法示例。
在下文中一共展示了ClientConfiguration.setZkTimeout方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testBasic
import org.apache.bookkeeper.conf.ClientConfiguration; //导入方法依赖的package包/类
@Test
public void testBasic() throws Exception {
String data = "{\"group1\": {\"" + BOOKIE1
+ "\": {\"rack\": \"/rack0\", \"hostname\": \"bookie1.example.com\"}, \"" + BOOKIE2
+ "\": {\"rack\": \"/rack1\", \"hostname\": \"bookie2.example.com\"}}}";
ZkUtils.createFullPathOptimistic(localZkc, ZkBookieRackAffinityMapping.BOOKIE_INFO_ROOT_PATH, data.getBytes(),
ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
// Case1: ZKCache is given
ZkBookieRackAffinityMapping mapping1 = new ZkBookieRackAffinityMapping();
ClientConfiguration bkClientConf1 = new ClientConfiguration();
bkClientConf1.setProperty(ZooKeeperCache.ZK_CACHE_INSTANCE, new ZooKeeperCache(localZkc) {
});
mapping1.setConf(bkClientConf1);
List<String> racks1 = mapping1.resolve(Lists.newArrayList(BOOKIE1, BOOKIE2, BOOKIE3));
assertEquals(racks1.get(0), "/rack0");
assertEquals(racks1.get(1), "/rack1");
assertEquals(racks1.get(2), NetworkTopology.DEFAULT_RACK);
// Case 2: ZkServers and ZkTimeout are given (ZKCache will be constructed in
// ZkBookieRackAffinityMapping#setConf)
ZkBookieRackAffinityMapping mapping2 = new ZkBookieRackAffinityMapping();
ClientConfiguration bkClientConf2 = new ClientConfiguration();
bkClientConf2.setZkServers("127.0.0.1" + ":" + LOCAL_ZOOKEEPER_PORT);
bkClientConf2.setZkTimeout(1000);
mapping2.setConf(bkClientConf2);
List<String> racks2 = mapping2.resolve(Lists.newArrayList(BOOKIE1, BOOKIE2, BOOKIE3));
assertEquals(racks2.get(0), "/rack0");
assertEquals(racks2.get(1), "/rack1");
assertEquals(racks2.get(2), NetworkTopology.DEFAULT_RACK);
localZkc.delete(ZkBookieRackAffinityMapping.BOOKIE_INFO_ROOT_PATH, -1);
}
示例2: testBookieInfoChange
import org.apache.bookkeeper.conf.ClientConfiguration; //导入方法依赖的package包/类
@Test
public void testBookieInfoChange() throws Exception {
Map<String, Map<String, BookieInfo>> bookieMapping = new HashMap<>();
Map<String, BookieInfo> mainBookieGroup = new HashMap<>();
Map<String, BookieInfo> secondaryBookieGroup = new HashMap<>();
BookieInfo bookieInfo0 = new BookieInfo();
bookieInfo0.setRack("rack0");
mainBookieGroup.put(BOOKIE1, bookieInfo0);
BookieInfo bookieInfo1 = new BookieInfo();
bookieInfo1.setRack("rack1");
mainBookieGroup.put(BOOKIE2, bookieInfo1);
BookieInfo bookieInfo2 = new BookieInfo();
bookieInfo2.setRack("rack0");
secondaryBookieGroup.put(BOOKIE3, bookieInfo2);
BookieInfo bookieInfo3 = new BookieInfo();
bookieInfo3.setRack("rack2");
secondaryBookieGroup.put(BOOKIE4, bookieInfo3);
bookieMapping.put("group1", mainBookieGroup);
bookieMapping.put("group2", secondaryBookieGroup);
ZkUtils.createFullPathOptimistic(localZkc, ZkBookieRackAffinityMapping.BOOKIE_INFO_ROOT_PATH,
jsonMapper.writeValueAsBytes(bookieMapping), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
Thread.sleep(100);
ZkIsolatedBookieEnsemblePlacementPolicy isolationPolicy = new ZkIsolatedBookieEnsemblePlacementPolicy();
ClientConfiguration bkClientConf = new ClientConfiguration();
bkClientConf.setZkServers("127.0.0.1" + ":" + LOCAL_ZOOKEEPER_PORT);
bkClientConf.setZkTimeout(1000);
bkClientConf.setProperty(ZkIsolatedBookieEnsemblePlacementPolicy.ISOLATION_BOOKIE_GROUPS, isolationGroups);
isolationPolicy.initialize(bkClientConf);
isolationPolicy.onClusterChanged(writableBookies, readOnlyBookies);
ArrayList<BookieSocketAddress> ensemble = isolationPolicy.newEnsemble(2, 2, new HashSet<>());
assertTrue(ensemble.contains(new BookieSocketAddress(BOOKIE1)));
assertTrue(ensemble.contains(new BookieSocketAddress(BOOKIE2)));
try {
isolationPolicy.newEnsemble(3, 3, new HashSet<>());
fail("should not pass");
} catch (BKNotEnoughBookiesException e) {
// ok
}
mainBookieGroup.put(BOOKIE3, bookieInfo2);
secondaryBookieGroup.remove(BOOKIE3);
bookieMapping.put("group1", mainBookieGroup);
bookieMapping.put("group2", secondaryBookieGroup);
localZkc.setData(ZkBookieRackAffinityMapping.BOOKIE_INFO_ROOT_PATH, jsonMapper.writeValueAsBytes(bookieMapping),
-1);
// wait for the zk to notify and update the mappings
Thread.sleep(100);
ensemble = isolationPolicy.newEnsemble(3, 3, new HashSet<>());
assertTrue(ensemble.contains(new BookieSocketAddress(BOOKIE1)));
assertTrue(ensemble.contains(new BookieSocketAddress(BOOKIE2)));
assertTrue(ensemble.contains(new BookieSocketAddress(BOOKIE3)));
localZkc.delete(ZkBookieRackAffinityMapping.BOOKIE_INFO_ROOT_PATH, -1);
Thread.sleep(100);
isolationPolicy.newEnsemble(1, 1, new HashSet<>());
}
示例3: commonInitialization
import org.apache.bookkeeper.conf.ClientConfiguration; //导入方法依赖的package包/类
@SuppressWarnings("deprecation")
private synchronized void commonInitialization(
DistributedLogConfiguration conf, String ledgersPath,
ClientSocketChannelFactory channelFactory, StatsLogger statsLogger, HashedWheelTimer requestTimer,
boolean registerExpirationHandler)
throws IOException, InterruptedException, KeeperException {
ClientConfiguration bkConfig = new ClientConfiguration();
bkConfig.setAddEntryTimeout(conf.getBKClientWriteTimeout());
bkConfig.setReadTimeout(conf.getBKClientReadTimeout());
bkConfig.setZkLedgersRootPath(ledgersPath);
bkConfig.setZkTimeout(conf.getBKClientZKSessionTimeoutMilliSeconds());
bkConfig.setNumWorkerThreads(conf.getBKClientNumberWorkerThreads());
bkConfig.setEnsemblePlacementPolicy(RegionAwareEnsemblePlacementPolicy.class);
bkConfig.setZkRequestRateLimit(conf.getBKClientZKRequestRateLimit());
bkConfig.setProperty(RegionAwareEnsemblePlacementPolicy.REPP_DISALLOW_BOOKIE_PLACEMENT_IN_REGION_FEATURE_NAME,
DistributedLogConstants.DISALLOW_PLACEMENT_IN_REGION_FEATURE_NAME);
// reload configuration from dl configuration with settings prefixed with 'bkc.'
ConfUtils.loadConfiguration(bkConfig, conf, "bkc.");
Class<? extends DNSToSwitchMapping> dnsResolverCls;
try {
dnsResolverCls = conf.getEnsemblePlacementDnsResolverClass();
} catch (ConfigurationException e) {
LOG.error("Failed to load bk dns resolver : ", e);
throw new IOException("Failed to load bk dns resolver : ", e);
}
final DNSToSwitchMapping dnsResolver =
NetUtils.getDNSResolver(dnsResolverCls, conf.getBkDNSResolverOverrides());
this.bkc = BookKeeper.newBuilder()
.config(bkConfig)
.zk(zkc.get())
.channelFactory(channelFactory)
.statsLogger(statsLogger)
.dnsResolver(dnsResolver)
.requestTimer(requestTimer)
.featureProvider(featureProvider.orNull())
.build();
if (registerExpirationHandler) {
sessionExpireWatcher = this.zkc.registerExpirationHandler(this);
}
}