我是akka和springboot的新手,在搜索大多数示例时注入了具有springextention的ActorSystem,我尝试了下面的内容并且它正在工作。只是想知道是否存在任何差异,或者我将来可能会遇到任何问题。
获取如下的ActorSystem:
@Bean
public ActorSystem getActorSystem() {
// Create the actor system.
final Config settings = ConfigFactory.load();
return ActorSystem.create("my", settings);
}
然后在需要的地方使用如下:
ActorSystem system = context.getBean(ActorSystem.class);
ActorRef consumer = system.actorOf(Props.create(Consumer.class));
答案 0 :(得分:0)
如果您没有在演员中使用任何bean,那就完全没问题了。
否则,当您在actor中使用上下文并在任何actor中调用SomeBean
时,您可能会遇到生命周期问题。
ActorSystem
可能尚未加载和初始化。 Spring不知道您的SomeBean
首先需要ActorSystem
进行初始化。
您可以使所有参与者使用@DependOn
.cabecera {
width: 132px;
color: white;
max-width: 132px;
min-width: 132px;
padding: 8px 12px;
font-weight: bolder;
white-space: nowrap;
background-color: #82005E;
}
所有bean,但这很脆弱且难以维护。
就个人而言,我没有发现Akka和(Spring + Java)是很好的匹配。将Akka与Scala语言和生态系统(库)结合使用时,摩擦力会减少。