2014-12-29 64 views
0

启动是运行弹簧反应堆的先决条件吗? 我想在常规的Web应用程序环境中使用弹簧反应堆。我可以看到反应器配置已创建。消费者已注册。通知被调用。事件不会被解雇。什么和如何检查?弹簧反应堆和启动依赖关系

配置

@Configuration 
    @EnableReactor 
    public class ReactorConfiguration { 
     @Bean 
     Environment env() { 
      return new Environment(); 
     } 

     @Bean 
     Reactor createReactor(Environment env) { 
      return Reactors.reactor().env(env).dispatcher(Environment.THREAD_POOL) 
        .get(); 
     } 


    } 

注册消费者:

@PostConstruct 
public void onStartUp() { 
    logger.debug("Registering Consumers"); 
    reactor.on(Selectors.T(Envelope.class), processParentRequest()); 
    reactor.on(Selectors.T(Bundle.class), processOptimizerRequest()); 

    reactor.on(Selectors.$(Constants.LOWER_ASG), processLowerAsgsRequest()); 
    reactor.on(Selectors.$(constants.SET_CONSUMPTION_LEVEL), 
      processConsumersRequest()); 
    reactor.on(Selectors.$(constants.SET_GENERATION_LEVEL), 
      processProducersRequest()); 
    reactor.on(Selectors.$(constants.SET_STORAGE_SUPPLY_LEVEL), 
      processStoragesRequest()); 
} 

private Consumer<Event<Envelope>> processParentRequest() { 
    return envelope -> optimizerUpdatingService 
      .processParentRequest(envelope); 
} 

private Consumer<Event<Bundle>> processOptimizerRequest() { 
    return bundle -> eventProcessingDispenser 
      .processOptimizerRequest(bundle); 
} 

private Consumer<Event<Envelope>> processLowerAsgsRequest() { 
    return envelope -> lowerAsgsProcessingService 
      .processLowerAsgRequest(envelope); 
} 

private Consumer<Event<Message>> processConsumersRequest() { 
    return message -> consumersProcessingService 
      .processConsumersRequest(message); 
} 

private Consumer<Event<Message>> processProducersRequest() { 
    return message -> producersProcessingService 
      .processProducersRequest(message); 
} 

private Consumer<Event<Message>> processStoragesRequest() { 
    return message -> storageProcessingService 
      .processStoragesRequest(message); 
} 

回答

0

春天引导不是一个先决条件可言,它只是使用Spring与反应堆冷却时提供了一些便利。

可能有任何数量的事情发生。没有任何细节,很难给出具体的建议。

+0

该日志说:[ConsumerBeanAutoConfiguration] reactorConversionService尚未在上下文中找到。跳绳。 – JavaSpringNoSqlInMemoryDb

+0

案件解决。它具有与Reactor配置无关的内部错误。 – JavaSpringNoSqlInMemoryDb