akka演员/路由器

时间:2015-04-23 11:42:23

标签: akka

我有以下配置

akka{
  actor {

    deployment{
       /my-router {
           dispatcher = akka.actor.my-dispatcher
           router = round-robin-pool
           nr-of-instances = 100
           cluster {
              enabled = on
              max-nr-of-instances-per-node = 30
           }
       }         
    }

    my-dispatcher {
       type = Dispatcher
       executor = "fork-join-executor"
       fork-join-executor {
           parallelism-min = 4
           parallelism-factor = 2.0
           parallelism-max = 20
       }
   }
  }

}

我发现(在visualVM的帮助下)没有使用my-dispatcher的线程。但是,如果我通过my-dispatcher指定.withDispatcher("akka.actor.my-dispatcher")当我通过FromConfig为我的路由器创建道具时,我可以观察到该线程。我可以说我观察了那些线程,因为我看到名称如下的线程:actorSystenName-akka.actor.my-dispatcher-8

所以问题是:

  1. 如何通过配置为路由器设置调度程序?

  2. 此调度员是否会用于路由器(显然是路由器的子节点)?

  3. 通过config和viaDispatcher指定调度程序有什么区别?

  4. 我还试图在""中包围config的调度程序设置,但仍然没有使用调度程序的名称观察visualVM中的线程,那么线程的名称是否具有这样的模式{actorSystenName}-{dispatcher}-{number}

  5. 修改 我发现pool-dispatcher属性可用于设置路由器的子控制器(路由器)。但扩展FromConfig的{​​{1}}缺少Pool方法的覆盖。还有一个问题:是这样做的(usePoolDispatcher是否在usePoolDispatcher中未被覆盖)或FromConfig不适用于此类用途?

0 个答案:

没有答案