当前位置: 首页>>代码示例>>Java>>正文


Java BookieServer类代码示例

本文整理汇总了Java中org.apache.bookkeeper.proto.BookieServer的典型用法代码示例。如果您正苦于以下问题:Java BookieServer类的具体用法?Java BookieServer怎么用?Java BookieServer使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


BookieServer类属于org.apache.bookkeeper.proto包,在下文中一共展示了BookieServer类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: newBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
BookieServer newBookie() throws Exception {
  int port = nextPort++;
  ServerConfiguration bookieConf = new ServerConfiguration();
  bookieConf.setBookiePort(port);
  File tmpdir = File.createTempFile("bookie" + Integer.toString(port) + "_",
                                    "test");
  tmpdir.delete();
  tmpdir.mkdir();

  bookieConf.setZkServers(zkEnsemble);
  bookieConf.setJournalDirName(tmpdir.getPath());
  bookieConf.setLedgerDirNames(new String[] { tmpdir.getPath() });

  BookieServer b = new BookieServer(bookieConf);
  b.start();
  for (int i = 0; i < 10 && !b.isRunning(); i++) {
    Thread.sleep(10000);
  }
  if (!b.isRunning()) {
    throw new IOException("Bookie would not start");
  }
  return b;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:24,代码来源:BKJMUtil.java

示例2: sleepBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Sleep a bookie until I count down the latch
 *
 * @param latch
 *          latch to wait on
 * @param bookie
 *          bookie server
 * @throws Exception
 */
private void sleepBookie(final CountDownLatch latch, final BookieServer bookie)
    throws Exception {

  Thread sleeper = new Thread() {
    public void run() {
      try {
        bookie.suspendProcessing();
        latch.await(2, TimeUnit.MINUTES);
        bookie.resumeProcessing();
      } catch (Exception e) {
        LOG.error("Error suspending bookie", e);
      }
    }
  };
  sleeper.setName("BookieServerSleeper-" + bookie.getBookie().getId());
  sleeper.start();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:27,代码来源:TestBookKeeperSpeculativeRead.java

示例3: sleepBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Sleep a bookie until I count down the latch
 *
 * @param latch
 *          Latch to wait on
 * @param bookie
 *          bookie server
 * @throws Exception
 */
private void sleepBookie(final CountDownLatch l, final BookieServer bookie)
    throws Exception {

  Thread sleeper = new Thread() {
    public void run() {
      try {
        bookie.suspendProcessing();
        l.await(60, TimeUnit.SECONDS);
        bookie.resumeProcessing();
      } catch (Exception e) {
        LOG.error("Error suspending bookie", e);
      }
    }
  };
  sleeper.setName("BookieServerSleeper-" + bookie.getBookie().getId());
  sleeper.start();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:27,代码来源:TestBookKeeperJournalManager.java

示例4: startBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
public void startBookie() throws Exception {
        ServerConfiguration conf = new ServerConfiguration();
        conf.setBookiePort(5621);
        conf.setUseHostNameAsBookieID(true);

        Path targetDir = path.resolve("bookie_data");
        conf.setZkServers("localhost:1282");
        conf.setLedgerDirNames(new String[]{targetDir.toAbsolutePath().toString()});
        conf.setJournalDirName(targetDir.toAbsolutePath().toString());        
        conf.setFlushInterval(10000);
        conf.setGcWaitTime(5);
        conf.setJournalFlushWhenQueueEmpty(true);
//        conf.setJournalBufferedEntriesThreshold(1);
        conf.setAutoRecoveryDaemonEnabled(false);
        conf.setEnableLocalTransport(true);

        conf.setAllowLoopback(true);
        conf.setProperty("journalMaxGroupWaitMSec", 10); // default 200ms            

        ClientConfiguration adminConf = new ClientConfiguration(conf);
        BookKeeperAdmin.format(adminConf, false, true);
        this.bookie = new BookieServer(conf);
        this.bookie.start();
    }
 
开发者ID:diennea,项目名称:herddb,代码行数:25,代码来源:ZKTestEnv.java

示例5: runBookies

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
private void runBookies() throws IOException{
	LOG.info("Starting Bookie(s)");
	// Create Bookie Servers (B1, B2, B3)
	
	tmpDirs = new File[numberOfBookies];		
	bs = new BookieServer[numberOfBookies];
	
	for(int i = 0; i < numberOfBookies; i++){
		tmpDirs[i] = File.createTempFile("bookie" + Integer.toString(i), "test");
		tmpDirs[i].delete();
		tmpDirs[i].mkdir();
		
		bs[i] = new BookieServer(initialPort + i, InetAddress.getLocalHost().getHostAddress() + ":"
                   + ZooKeeperDefaultPort, tmpDirs[i], new File[]{tmpDirs[i]});
		bs[i].start();
	}		
}
 
开发者ID:gerritjvv,项目名称:bigstreams,代码行数:18,代码来源:LocalBookKeeper.java

示例6: stopBKCluster

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Stop cluster. Also, stops all the auto recovery processes for the bookie cluster, if isAutoRecoveryEnabled is
 * true.
 *
 * @throws Exception
 */
protected void stopBKCluster() throws Exception {
    if (bkc != null) {
        bkc.close();
    }

    for (BookieServer server : bs) {
        server.shutdown();
        AutoRecoveryMain autoRecovery = autoRecoveryProcesses.get(server);
        if (autoRecovery != null && isAutoRecoveryEnabled()) {
            autoRecovery.shutdown();
            LOG.debug("Shutdown auto recovery for bookieserver:" + server.getLocalAddress());
        }
    }
    bs.clear();
    for (File f : tmpDirs) {
        FileUtils.deleteDirectory(f);
    }
}
 
开发者ID:apache,项目名称:incubator-pulsar,代码行数:25,代码来源:BookKeeperClusterTestCase.java

示例7: killBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Kill a bookie by its socket address. Also, stops the autorecovery process for the corresponding bookie server, if
 * isAutoRecoveryEnabled is true.
 *
 * @param addr
 *            Socket Address
 * @return the configuration of killed bookie
 * @throws InterruptedException
 */
public ServerConfiguration killBookie(InetSocketAddress addr) throws Exception {
    BookieServer toRemove = null;
    int toRemoveIndex = 0;
    for (BookieServer server : bs) {
        if (server.getLocalAddress().equals(addr)) {
            server.shutdown();
            toRemove = server;
            break;
        }
        ++toRemoveIndex;
    }
    if (toRemove != null) {
        stopAutoRecoveryService(toRemove);
        bs.remove(toRemove);
        return bsConfs.remove(toRemoveIndex);
    }
    return null;
}
 
开发者ID:apache,项目名称:incubator-pulsar,代码行数:28,代码来源:BookKeeperClusterTestCase.java

示例8: sleepBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Sleep a bookie
 *
 * @param addr
 *            Socket Address
 * @param seconds
 *            Sleep seconds
 * @return Count Down latch which will be counted down when sleep finishes
 * @throws InterruptedException
 * @throws IOException
 */
public CountDownLatch sleepBookie(InetSocketAddress addr, final int seconds) throws Exception {
    for (final BookieServer bookie : bs) {
        if (bookie.getLocalAddress().equals(addr)) {
            final CountDownLatch l = new CountDownLatch(1);
            Thread sleeper = new Thread() {
                @Override
                public void run() {
                    try {
                        bookie.suspendProcessing();
                        l.countDown();
                        Thread.sleep(seconds * 1000);
                        bookie.resumeProcessing();
                    } catch (Exception e) {
                        LOG.error("Error suspending bookie", e);
                    }
                }
            };
            sleeper.start();
            return l;
        }
    }
    throw new IOException("Bookie not found");
}
 
开发者ID:apache,项目名称:incubator-pulsar,代码行数:35,代码来源:BookKeeperClusterTestCase.java

示例9: restartBookies

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Restart bookie servers using new configuration settings. Also restart the respective auto recovery process, if
 * isAutoRecoveryEnabled is true.
 *
 * @param newConf
 *            New Configuration Settings
 * @throws InterruptedException
 * @throws IOException
 * @throws KeeperException
 * @throws BookieException
 */
public void restartBookies(ServerConfiguration newConf) throws Exception {
    // shut down bookie server
    for (BookieServer server : bs) {
        server.shutdown();
        stopAutoRecoveryService(server);
    }
    bs.clear();
    Thread.sleep(1000);
    // restart them to ensure we can't

    List<ServerConfiguration> bsConfsCopy = new ArrayList<ServerConfiguration>(bsConfs);
    bsConfs.clear();
    for (ServerConfiguration conf : bsConfsCopy) {
        if (null != newConf) {
            conf.loadConf(newConf);
        }
        startBookie(conf);
    }
}
 
开发者ID:apache,项目名称:incubator-pulsar,代码行数:31,代码来源:BookKeeperClusterTestCase.java

示例10: startBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Helper method to startup a bookie server using a configuration object. Also, starts the auto recovery process if
 * isAutoRecoveryEnabled is true.
 *
 * @param conf
 *            Server Configuration Object
 *
 */
protected BookieServer startBookie(ServerConfiguration conf) throws Exception {
    BookieServer server = new BookieServer(conf);
    bsConfs.add(conf);
    bs.add(server);

    server.start();

    if (bkc == null) {
        bkc = new BookKeeperTestClient(baseClientConf);
    }

    int port = conf.getBookiePort();
    while (bkc.getZkHandle().exists(
            "/ledgers/available/" + InetAddress.getLocalHost().getHostAddress() + ":" + port, false) == null) {
        Thread.sleep(500);
    }

    bkc.readBookiesBlocking();
    LOG.info("New bookie on port " + port + " has been created.");

    return server;
}
 
开发者ID:apache,项目名称:incubator-pulsar,代码行数:31,代码来源:BookKeeperClusterTestCase.java

示例11: close

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
@Override
public void close() throws Exception {
    try {
        this.servers.stream().filter(Objects::nonNull).forEach(BookieServer::shutdown);
        if (this.zkServer.get() != null) {
            this.zkServer.get().close();
        }
    } finally {
        cleanupDirectories();
    }

    Thread c = this.cleanup.getAndSet(null);
    if (c != null) {
        Runtime.getRuntime().removeShutdownHook(c);
    }
}
 
开发者ID:pravega,项目名称:pravega,代码行数:17,代码来源:BookKeeperServiceRunner.java

示例12: EmbeddedBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
/**
 * Create an empty data directory for the Bookie server and configure
 * the Bookie server.
 * @param baseConf  Base Bookie server configuration
 * @param zkConnect ZooKeeper quorum specification (e.g., "host:port" or a
 *                  list of "host:port" pairs)
 * @param bookieId Unique identifier for this bookie
 * @throws IOException If unable to create the data directory.
 */
EmbeddedBookie(ServerConfiguration baseConf, String zkConnect, int bookieId)
    throws IOException {
  this.bookieId = bookieId;
  File bkTmpDir = new File(TEST_DIR) ;
  bkTmpDir.mkdirs();
  tmpDir = new File(BK_BOOKIE_DATA_DIR_PREFIX + bookieId);
  FileUtil.fullyDelete(tmpDir);
  if (!tmpDir.mkdirs()) {
    throw new IOException("Unable to create bookie dir " + tmpDir);
  }
  bookieConf = new ServerConfiguration(baseConf);
  bookieConf.setBookiePort(MiniDFSCluster.getFreePort());
  bookieConf.setZkServers(zkConnect);
  bookieConf.setJournalDirName(tmpDir.getPath());
  bookieConf.setLedgerDirNames(new String[] { tmpDir.getPath() });
  bookieConf.setLogger(LogFactory.getLog(this.getClass().toString()));
  bookieRef = new AtomicReference<BookieServer>(null);
}
 
开发者ID:rhli,项目名称:hadoop-EAR,代码行数:28,代码来源:MiniBookKeeperCluster.java

示例13: startBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
public void startBookie() throws Exception {
        ServerConfiguration conf = new ServerConfiguration();
        conf.setBookiePort(5621);
        conf.setUseHostNameAsBookieID(true);

        Path targetDir = path.resolve("bookie_data");
        conf.setZkServers("localhost:1282");
        conf.setLedgerDirNames(new String[]{targetDir.toAbsolutePath().toString()});
        conf.setJournalDirName(targetDir.toAbsolutePath().toString());
        conf.setFlushInterval(1000);
        conf.setJournalFlushWhenQueueEmpty(true);
        conf.setGcWaitTime(10);
        conf.setAutoRecoveryDaemonEnabled(false);
        
        // in unit tests we do not need real network for bookies
        conf.setEnableLocalTransport(true);
//        conf.setDisableServerSocketBind(true);

        conf.setAllowLoopback(true);

        ClientConfiguration adminConf = new ClientConfiguration(conf);
        BookKeeperAdmin.format(adminConf, false, true);
        this.bookie = new BookieServer(conf);
        this.bookie.start();
    }
 
开发者ID:diennea,项目名称:majordodo,代码行数:26,代码来源:ZKTestEnv.java

示例14: startBookie

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
public void startBookie() throws Exception {
    ServerConfiguration conf = new ServerConfiguration();
    conf.setBookiePort(5621);
    conf.setUseHostNameAsBookieID(true);

    Path targetDir = path.resolve("bookie_data");
    conf.setZkServers("localhost:1282");
    conf.setLedgerDirNames(new String[]{targetDir.toAbsolutePath().toString()});
    conf.setJournalDirName(targetDir.toAbsolutePath().toString());
    conf.setFlushInterval(1000);
    conf.setAutoRecoveryDaemonEnabled(false);

    conf.setAllowLoopback(true);

    ClientConfiguration adminConf = new ClientConfiguration(conf);
    BookKeeperAdmin.format(adminConf, false, true);
    this.bookie = new BookieServer(conf);
    this.bookie.start();
}
 
开发者ID:diennea,项目名称:majordodo,代码行数:20,代码来源:ZKTestEnv.java

示例15: teardownBookkeeper

import org.apache.bookkeeper.proto.BookieServer; //导入依赖的package包/类
@AfterClass
public static void teardownBookkeeper() throws Exception {
  bkutil.teardown();
  for (BookieServer bk : bks) {
    bk.shutdown();
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:TestBookKeeperSpeculativeRead.java


注:本文中的org.apache.bookkeeper.proto.BookieServer类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。