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


Java MediaDriver.launch方法代码示例

本文整理汇总了Java中io.aeron.driver.MediaDriver.launch方法的典型用法代码示例。如果您正苦于以下问题:Java MediaDriver.launch方法的具体用法?Java MediaDriver.launch怎么用?Java MediaDriver.launch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在io.aeron.driver.MediaDriver的用法示例。


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

示例1: main

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
@SuppressWarnings("checkstyle:UncommentedMain")
public static void main(final String... args) {
  MediaDriver.loadPropertiesFiles(args);

  setProperty(DISABLE_BOUNDS_CHECKS_PROP_NAME, "true");
  setProperty("aeron.mtu.length", "16384");
  setProperty("aeron.socket.so_sndbuf", "2097152");
  setProperty("aeron.socket.so_rcvbuf", "2097152");
  setProperty("aeron.rcv.initial.window.length", "2097152");

  final MediaDriver.Context ctx = new MediaDriver.Context()
      .threadingMode(ThreadingMode.DEDICATED)
      .dirsDeleteOnStart(true)
      .termBufferSparseFile(false)
      .conductorIdleStrategy(new BusySpinIdleStrategy())
      .receiverIdleStrategy(new BusySpinIdleStrategy())
      .senderIdleStrategy(new BusySpinIdleStrategy());

  try (MediaDriver ignored = MediaDriver.launch(ctx)) {
    new SigIntBarrier().await();

  }
}
 
开发者ID:benalexau,项目名称:rpc-bench,代码行数:24,代码来源:LowLatencyMediaDriver.java

示例2: launch

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
/**
 * Launch a new {@link ClusteredMediaDriver} with provided contexts.
 *
 * @param driverCtx          for configuring the {@link MediaDriver}.
 * @param archiveCtx         for configuring the {@link Archive}.
 * @param consensusModuleCtx for the configuration of the {@link ConsensusModule}.
 * @return a new {@link ClusteredMediaDriver} with the provided contexts.
 */
public static ClusteredMediaDriver launch(
    final MediaDriver.Context driverCtx,
    final Archive.Context archiveCtx,
    final ConsensusModule.Context consensusModuleCtx)
{
    final MediaDriver driver = MediaDriver.launch(driverCtx
        .spiesSimulateConnection(true));

    final Archive archive = Archive.launch(archiveCtx
        .mediaDriverAgentInvoker(driver.sharedAgentInvoker())
        .errorHandler(driverCtx.errorHandler())
        .errorCounter(driverCtx.systemCounters().get(SystemCounterDescriptor.ERRORS)));

    final ConsensusModule consensusModule = ConsensusModule.launch(consensusModuleCtx
        .errorHandler(driverCtx.errorHandler())
        .errorCounter(driverCtx.systemCounters().get(SystemCounterDescriptor.ERRORS)));

    return new ClusteredMediaDriver(driver, archive, consensusModule);
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:28,代码来源:ClusteredMediaDriver.java

示例3: launch

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
private void launch()
{
    final String baseDirA = ROOT_DIR + "A";
    final String baseDirB = ROOT_DIR + "B";

    buffer.putInt(0, 1);

    final MediaDriver.Context driverAContext = new MediaDriver.Context()
        .errorHandler(Throwable::printStackTrace)
        .publicationTermBufferLength(TERM_BUFFER_LENGTH)
        .aeronDirectoryName(baseDirA)
        .threadingMode(ThreadingMode.SHARED);

    driverBContext.publicationTermBufferLength(TERM_BUFFER_LENGTH)
        .errorHandler(Throwable::printStackTrace)
        .aeronDirectoryName(baseDirB)
        .threadingMode(ThreadingMode.SHARED);

    driverA = MediaDriver.launch(driverAContext);
    driverB = MediaDriver.launch(driverBContext);
    clientA = Aeron.connect(new Aeron.Context().aeronDirectoryName(driverAContext.aeronDirectoryName()));
    clientB = Aeron.connect(new Aeron.Context().aeronDirectoryName(driverBContext.aeronDirectoryName()));
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:24,代码来源:MultiDestinationCastTest.java

示例4: main

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
public static void main(final String[] args)
{
    loadPropertiesFiles(args);

    final MediaDriver.Context ctx = new MediaDriver.Context()
        .termBufferSparseFile(false)
        .threadingMode(ThreadingMode.DEDICATED)
        .conductorIdleStrategy(new BusySpinIdleStrategy())
        .receiverIdleStrategy(new BusySpinIdleStrategy())
        .senderIdleStrategy(new BusySpinIdleStrategy());

    try (MediaDriver ignored = MediaDriver.launch(ctx))
    {
        new ShutdownSignalBarrier().await();

        System.out.println("Shutdown Driver...");
    }
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:19,代码来源:LowLatencyMediaDriver.java

示例5: shouldHaveCorrectTermBufferLength

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
@Theory
@Test(timeout = 10000)
public void shouldHaveCorrectTermBufferLength(final String channel)
{
    final MediaDriver.Context ctx = new MediaDriver.Context()
        .errorHandler(Throwable::printStackTrace)
        .publicationTermBufferLength(TEST_TERM_LENGTH * 2)
        .ipcTermBufferLength(TEST_TERM_LENGTH * 2);

    try (MediaDriver ignore = MediaDriver.launch(ctx);
        Aeron aeron = Aeron.connect();
        Publication publication = aeron.addPublication(channel, STREAM_ID))
    {
        assertThat(publication.termBufferLength(), is(TEST_TERM_LENGTH));
    }
    finally
    {
        ctx.deleteAeronDirectory();
    }
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:21,代码来源:TermBufferLengthTest.java

示例6: main

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
public static void main(final String... args) {
    final String aeronDirectoryName = args[0];
    final MediaDriver.Context ctx = new MediaDriver.Context()
            .threadingMode(ThreadingMode.DEDICATED)
            .conductorIdleStrategy(new BackoffIdleStrategy(1, 1, 1, 1))
            .receiverIdleStrategy(new BusySpinIdleStrategy())
            .senderIdleStrategy(new BusySpinIdleStrategy())
            .aeronDirectoryName(aeronDirectoryName);
    MediaDriver.launch(ctx);
    new SigIntBarrier().await();
    System.out.println("Shutdown media driver.");
}
 
开发者ID:terzerm,项目名称:fx-highway,代码行数:13,代码来源:AeronMediaDriver.java

示例7: newMediaDriver

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
private static MediaDriver newMediaDriver()
{
    final MediaDriver.Context context = new MediaDriver.Context()
        .dirDeleteOnStart(true)
        .publicationTermBufferLength(128 * 1024 * 1024);

    return MediaDriver.launch(context);
}
 
开发者ID:real-logic,项目名称:artio,代码行数:9,代码来源:FixBenchmarkServer.java

示例8: start

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
private void start(final boolean dirDeleteOnStart)
{
    final MediaDriver.Context context = TestFixtures.mediaDriverContext(
        TestFixtures.TERM_BUFFER_LENGTH, dirDeleteOnStart);
    context.driverTimeoutMs(DRIVER_TIMEOUT_MS);
    context.warnIfDirectoryExists(false);

    mediaDriver = MediaDriver.launch(context);
    final String aeronDirectoryName = context.aeronDirectoryName();
    CloseChecker.onOpen(aeronDirectoryName, mediaDriver);

    final EngineConfiguration acceptingConfig = acceptingConfig(
        port, ACCEPTOR_ID, INITIATOR_ID);
    acceptingConfig.aeronContext().driverTimeoutMs(DRIVER_TIMEOUT_MS);

    acceptingEngine = FixEngine.launch(acceptingConfig);

    delete(CLIENT_LOGS);
    final EngineConfiguration initiatingConfig = initiatingConfig(libraryAeronPort);
    initiatingConfig.aeronContext().driverTimeoutMs(DRIVER_TIMEOUT_MS);
    initiatingEngine = FixEngine.launch(initiatingConfig);

    final LibraryConfiguration acceptingLibraryConfig = acceptingLibraryConfig(acceptingHandler);
    acceptingLibraryConfig.aeronContext().driverTimeoutMs(DRIVER_TIMEOUT_MS);
    acceptingLibrary = connect(acceptingLibraryConfig);

    final LibraryConfiguration configuration = new LibraryConfiguration()
        .sessionAcquireHandler(initiatingHandler)
        .sentPositionHandler(initiatingHandler)
        .sessionExistsHandler(initiatingHandler)
        .libraryAeronChannels(singletonList("aeron:udp?endpoint=localhost:" + libraryAeronPort));
    configuration.aeronContext().driverTimeoutMs(DRIVER_TIMEOUT_MS);

    initiatingLibrary = connect(configuration);
    testSystem = new TestSystem(acceptingLibrary, initiatingLibrary);

    connectSessions();
}
 
开发者ID:real-logic,项目名称:artio,代码行数:39,代码来源:MediaDriverRestartTest.java

示例9: launchMediaDriver

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
public static MediaDriver launchMediaDriver(final MediaDriver.Context context)
{
    final MediaDriver mediaDriver = MediaDriver.launch(context);
    final String aeronDirectoryName = context.aeronDirectoryName();
    CloseChecker.onOpen(aeronDirectoryName, mediaDriver);

    return mediaDriver;
}
 
开发者ID:real-logic,项目名称:artio,代码行数:9,代码来源:TestFixtures.java

示例10: main

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
public static void main(final String[] args)
{
    final MediaDriver.Context context = new MediaDriver.Context()
        .threadingMode(SHARED)
        .dirDeleteOnStart(true);

    try (MediaDriver ignore = MediaDriver.launch(context))
    {
        StressUtil.awaitKeyPress();
    }
}
 
开发者ID:real-logic,项目名称:artio,代码行数:12,代码来源:SoleMediaDriver.java

示例11: Server

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
public Server()
{
    final AuthenticationStrategy authenticationStrategy = logon -> true;

    // Static configuration lasts the duration of a FIX-Gateway instance
    final String aeronChannel = "aeron:udp?endpoint=localhost:10000";
    final EngineConfiguration configuration = new EngineConfiguration()
        .bindTo("localhost", StressConfiguration.PORT)
        .logFileDir("stress-server-logs")
        .libraryAeronChannel(aeronChannel);
    configuration
        .authenticationStrategy(authenticationStrategy)
        .agentNamePrefix("server-");

    System.out.println("Server Logs at " + configuration.logFileDir());

    StressUtil.cleanupOldLogFileDir(configuration);

    final MediaDriver.Context context = new MediaDriver.Context()
        .threadingMode(SHARED)
        .dirDeleteOnStart(true);
    mediaDriver = MediaDriver.launch(context);
    fixEngine = FixEngine.launch(configuration);

    final LibraryConfiguration libraryConfiguration = new LibraryConfiguration();
    libraryConfiguration
        .authenticationStrategy(authenticationStrategy)
        .agentNamePrefix("server-");
    fixLibrary = blockingConnect(libraryConfiguration
        .sessionAcquireHandler(StressSessionHandler::new)
        .sessionExistsHandler(new AcquiringSessionExistsHandler())
        .libraryAeronChannels(singletonList(aeronChannel)));
}
 
开发者ID:real-logic,项目名称:artio,代码行数:34,代码来源:Server.java

示例12: launch

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
/**
 * Launch a new {@link ArchivingMediaDriver} with provided contexts.
 *
 * @param driverCtx  for configuring the {@link MediaDriver}.
 * @param archiveCtx for configuring the {@link Archive}.
 * @return a new {@link ArchivingMediaDriver} with the provided contexts.
 */
public static ArchivingMediaDriver launch(final MediaDriver.Context driverCtx, final Archive.Context archiveCtx)
{
    final MediaDriver driver = MediaDriver.launch(driverCtx);

    final Archive archive = Archive.launch(archiveCtx
        .mediaDriverAgentInvoker(driver.sharedAgentInvoker())
        .errorHandler(driverCtx.errorHandler())
        .errorCounter(driverCtx.systemCounters().get(SystemCounterDescriptor.ERRORS)));

    return new ArchivingMediaDriver(driver, archive);
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:19,代码来源:ArchivingMediaDriver.java

示例13: before

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
@Before
public void before()
{
    rnd.setSeed(seed);

    driver = MediaDriver.launch(
        new MediaDriver.Context()
            .threadingMode(ThreadingMode.DEDICATED)
            .spiesSimulateConnection(true)
            .errorHandler(Throwable::printStackTrace)
            .dirDeleteOnStart(true));

    archive = Archive.launch(
        new Archive.Context()
            .archiveDir(TestUtil.makeTempDir())
            .fileSyncLevel(0)
            .threadingMode(ArchiveThreadingMode.SHARED)
            .errorCounter(driver.context().systemCounters().get(SystemCounterDescriptor.ERRORS))
            .errorHandler(driver.context().errorHandler()));

    aeron = Aeron.connect();

    aeronArchive = AeronArchive.connect(
        new AeronArchive.Context()
            .controlResponseChannel(CONTROL_RESPONSE_URI)
            .controlResponseStreamId(CONTROL_RESPONSE_STREAM_ID)
            .aeron(aeron));
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:29,代码来源:ArchiveReplayLoadTest.java

示例14: before

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
@Before
public void before()
{
    final String baseDirA = ROOT_DIR + "A";
    final String baseDirB = ROOT_DIR + "B";

    buffer.putInt(0, 1);

    final MediaDriver.Context driverAContext = new MediaDriver.Context()
        .publicationTermBufferLength(TERM_BUFFER_LENGTH)
        .aeronDirectoryName(baseDirA)
        .errorHandler(countingErrorHandler)
        .threadingMode(THREADING_MODE);

    final MediaDriver.Context driverBContext = new MediaDriver.Context()
        .publicationTermBufferLength(TERM_BUFFER_LENGTH)
        .aeronDirectoryName(baseDirB)
        .errorHandler(countingErrorHandler)
        .threadingMode(THREADING_MODE);

    driverA = MediaDriver.launch(driverAContext);
    driverB = MediaDriver.launch(driverBContext);

    clientA = Aeron.connect(
        new Aeron.Context()
            .aeronDirectoryName(driverAContext.aeronDirectoryName())
            .errorHandler(errorHandlerClientA));

    clientB = Aeron.connect(
        new Aeron.Context()
            .aeronDirectoryName(driverBContext.aeronDirectoryName())
            .errorHandler(errorHandlerClientB));

    clientC = Aeron.connect(
        new Aeron.Context()
            .aeronDirectoryName(driverBContext.aeronDirectoryName())
            .errorHandler(errorHandlerClientC));
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:39,代码来源:ChannelEndpointStatusTest.java

示例15: launch

import io.aeron.driver.MediaDriver; //导入方法依赖的package包/类
private void launch()
{
    driverContext.publicationTermBufferLength(TERM_BUFFER_LENGTH)
        .sharedIdleStrategy(new YieldingIdleStrategy())
        .errorHandler(Throwable::printStackTrace)
        .threadingMode(ThreadingMode.SHARED);

    driver = MediaDriver.launch(driverContext);
    client = Aeron.connect(new Aeron.Context());
}
 
开发者ID:real-logic,项目名称:aeron,代码行数:11,代码来源:SpySimulatedConnectionTest.java


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