Akka /播放线程池的配置文件

时间:2017-09-05 23:53:49

标签: java multithreading scala playframework akka

我有以下适用于我的示例配置

blocking-io-dispatcher {
db-backup-context {
  thread-pool-executor {
    core-pool-size-factor = 3
    core-pool-size-max = 10
  }
}

}

我读过核心池大小,核心池大小max以及它与有界队列的关系。以上是我的play.conf文件,用于我的播放Web服务。 我按照下面的线程/文件

我仍然不清楚以下

  1. 以上配置使用有界队列还是无限制队列?
  2. 如果以上使用有界队列,那么队列大小是多少?
  3. 值3意味着每次请求时都会创建3个线程。之后,如果第四个请求到来,即使有限队列没有满,也会创建更多线程,直到队列满了?
  4. 如何在上面的配置中指定队列配置?

1 个答案:

答案 0 :(得分:0)

通过查看akka-actor reference.conf来回答大多数(如果不是全部)问题,https://github.com/akka/akka/blob/master/akka-actor/src/main/resources/reference.conf#L447

  1. &安培; 2.默认是无界的

  2. 3表示运行它的机器上有3 *个核心,然后由core-pool-size-mincore-pool-size-max封顶,将用作corePoolSize的{​​{1}} 。 ThreadPoolExecutor确定即使它们处于空闲状态也要保留在池中的线​​程数。

  3. 有关控制队列大小和类型的详细信息,请参阅corePoolSize,有多个相关设置。