簡體   English   中英

限制Play 2.1框架中的線程數

[英]Limit number of thread in Play 2.1 framework

我正在使用Play 2.1和Scala連續運行幾個測試。 我正在做Future.traverse(tests)(test => Future(runTest(test))

我想限制並行運行的測試數量,所以我想限制默認調度程序中的線程數。

我試着把

play {
  akka {
    event-handlers = ["akka.event.slf4j.Slf4jEventHandler"]
    loglevel = WARNING
    actor {
      default-dispatcher = {
        fork-join-executor {
          parallelism-factor = 1.0
          parallelism-max = 2
        }
      }
    }
  }
} 

application.conf它似乎沒有任何影響(當我運行程序時,每個核心仍然有一個線程)。 正確讀取application.conf以進行其他播放設置。

我試圖擺脫圍繞它的游戲{}但它什么都沒改變。

我嘗試了不同的執行上下文導入但沒有成功:

//import scala.concurrent.ExecutionContext.Implicits._
import play.api.libs.concurrent.Execution.Implicits._

當我運行應用程序時,我收到此消息,因此它似乎是使用的默認調度程序:

[info] play - Starting application default Akka system.

有人知道為什么我無法配置默認調度程序嗎?

謝謝!

線程列表:

main
Reference Handler
Finalizer
Signal Dispatcher
FSEvent thread
Attach Listener
play-scheduler-1
Timer-0
com.google.common.base.internal.Finalizer
BoneCP-keep-alive-scheduler
BoneCP-max-alive-scheduler
BoneCP-pool-alive-scheduler
application-akka.actor.default-dispatcher-2
application-scheduler-1
ForkJoinPool-3-worker-1
default-scheduler-1
default-scheduler-1
default-scheduler-1
default-akka.actor.default-dispatcher-3
default-akka.actor.default-dispatcher-5
default-akka.actor.default-dispatcher-3
default-akka.actor.default-dispatcher-2
default-akka.actor.default-dispatcher-5
default-pinned-dispatcher-4
play-akka.actor.default-dispatcher-2
play-akka.actor.default-dispatcher-4
Timer-1
Timer-3
Timer-4
Hashed wheel timer #1
Hashed wheel timer #2
Hashed wheel timer #3
AsyncHttpClient-Reaper
AsyncHttpClient-Reaper
AsyncHttpClient-Reaper
default-pinned-dispatcher-4
default-pinned-dispatcher-4
New I/O boss #35
New I/O boss #44

8 play-internal-execution-context- (1到8)

並且8次iteratee-execution-context- (1到8)

和62個New I/O worker # (1到62)

您忘記的設置是parallelism-min ,默認為8.但在您更改之前請考慮不使用默認調度程序:將其限制為兩個線程可能會破壞系統。 我建議配置一個特定的調度程序用於您的未來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM