Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Playframework 2.0 Akka actor外部化部署配置_Playframework 2.0_Akka - Fatal编程技术网

Playframework 2.0 Akka actor外部化部署配置

Playframework 2.0 Akka actor外部化部署配置,playframework-2.0,akka,Playframework 2.0,Akka,我正在使用 lazy val ref = Akka.system.actorOf(Props[BackgroundProcessorActor], name = "background-processor") 我有一个指定以下配置的属性文件 application { akka { actor { default-dispatcher = { fork-join-executor { parallelism-factor = 1.0

我正在使用

lazy val ref = Akka.system.actorOf(Props[BackgroundProcessorActor], name = "background-processor")
我有一个指定以下配置的属性文件

application {
  akka {
    actor {
      default-dispatcher = {
        fork-join-executor {
          parallelism-factor = 1.0
        }
      }

      background-dispatcher = {
        fork-join-executor {
          parallelism-factor = 1.0
        }
      }

      deployment = {
        /background-processor = {
          dispatcher = background-dispatcher
          router = round-robin
          nr-of-instances = 128
        }

        /solr_asset_updater = {
          dispatcher = default-dispatcher
        }

        /solr_asset_log_updater = {
          dispatcher = default-dispatcher
        }

        /change_queue_processor = {
          dispatcher = default-dispatcher
        }
      }
    }
  }
}
我花了一些时间阅读文档和游戏的源代码。但是,
background processor
的部署设置,特别是
router=round-robin
nr of instances=128
的部署设置似乎不起作用

有必要具体说明吗

lazy val ref = Akka.system.actorOf(Props[BackgroundProcessorActor].withRouter(FromConfig()), name = "background-processor")

这在我看来是多余的。我遗漏了什么?

该剧Akka插件中的演员系统名为
应用程序
,但使用顶级配置(不是子配置)。您可以通过设置日志级别轻松地测试这一点

akka {
  loglevel = "DEBUG"

  actor {
    ...
  }
}

在回答问题时

是否需要指定(FromConfig)

来自akka文档的答案

另一方面,是否创建路由器的决定必须在代码中做出,也就是说,您不能仅通过外部配置就将某个东西设置为路由器(详见下文)


实际上,要求在代码中使用withRouter并指定路由器选项,或者使用FromConfig从配置中指定路由器选项,这是正确的,但是寻址并没有解决问题,因为FromConfig是必需的。你确实把我引向了正确的方向,但其余的(例如dispatcher)应该会自动工作。
lazy val ref = Akka.system.actorOf(Props[BackgroundProcessorActor].withRouter(FromConfig()), name = "background-processor")