protected void configure()

in tso-server/src/main/java/org/apache/omid/tso/DisruptorModule.java [38:66]


    protected void configure() {
        switch (config.getWaitStrategyEnum()) {
        // A low-cpu usage Disruptor configuration for using in local/test environments
        case LOW_CPU:
             bind(WaitStrategy.class).annotatedWith(Names.named("PersistenceStrategy")).to(BlockingWaitStrategy.class);
             bind(WaitStrategy.class).annotatedWith(Names.named("ReplyStrategy")).to(BlockingWaitStrategy.class);
             bind(WaitStrategy.class).annotatedWith(Names.named("RetryStrategy")).to(BlockingWaitStrategy.class);
             break;
        // The default high-cpu usage Disruptor configuration for getting high throughput on production environments
        case HIGH_THROUGHPUT:
        default:
             bind(WaitStrategy.class).annotatedWith(Names.named("PersistenceStrategy")).to(BusySpinWaitStrategy.class);
             bind(WaitStrategy.class).annotatedWith(Names.named("ReplyStrategy")).to(BusySpinWaitStrategy.class);
             bind(WaitStrategy.class).annotatedWith(Names.named("RetryStrategy")).to(YieldingWaitStrategy.class);
             break;
        }

        if (config.getLowLatency()) {
            bind(RequestProcessor.class).to(RequestProcessorSkipCT.class).in(Singleton.class);
            bind(PersistenceProcessor.class).to(PersitenceProcessorNullImpl.class).in(Singleton.class);
        } else {
            bind(PersistenceProcessor.class).to(PersistenceProcessorImpl.class).in(Singleton.class);
            bind(RequestProcessor.class).to(RequestProcessorPersistCT.class).in(Singleton.class);
        }

        bind(ReplyProcessor.class).to(ReplyProcessorImpl.class).in(Singleton.class);
        bind(RetryProcessor.class).to(RetryProcessorImpl.class).in(Singleton.class);

    }