我在我的应用程序中经常使用 Guice。最近我开始学习 akka actor,并想用它重构我的应用程序。
然而,一开始我就想知道我的所有技巧将如何与演员合作。我继续在谷歌上搜索,结果有点混乱。
我找到的关于该主题的最新文档是:
http://letitcrash.com/post/55958814293/akka-dependency-injection http://letitcrash.com/post/55958814293/akka-dependency-injection
http://eng.42go.com/tag/guice/ http://eng.42go.com/tag/guice/
这不提倡同样的事情。
我必须承认我仍然需要阅读很多东西,我正处于学习akka的开始阶段。我做了一些例子,也做了一些红色的事情,但我不想深入研究一些事情,然后意识到我会遇到很多问题。
所以我的问题是,截至今天,关于如何使用 Akka Actors 进行依赖注入的共识是什么?
什么样的注射是可能的?我们可以将演员与对象/其他演员/...连接起来吗
无论如何,请以简洁的方式概述一些可以帮助我理解什么是可能的以及什么是最佳实践的东西?
我知道您正在 Akka 中使用 Guice 和 Scala,但是 Typesafe 提供了tutorial http://typesafe.com/activator/template/akka-java-spring描述 Akka 与 Spring 和 Java 的工作原理。这可以为理解依赖注入如何适应Actor
适合您情况的生命周期。
同时,这里是他们的一些示例代码文档 http://doc.akka.io/docs/akka/2.2.3/AkkaScala.pdf使用工厂方法注入构造函数参数:
class DependencyInjector(applicationContext: AnyRef, beanName: String) extends IndirectActorProducer {
override def actorClass = classOf[Actor]
override def produce = // obtain fresh Actor instance from DI framework ...
}
val actorRef = system.actorOf(Props(classOf[DependencyInjector], applicationContext, "hello"), "helloBean")
Here http://letitcrash.com/post/55958814293/akka-dependency-injectionTypesafe 就此事编写了一些指南。
最后,请注意文档中的以下内容:
"当使用依赖注入框架时,actor beansMUST NOT有单例作用域。"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)