gpt4 book ai didi

multithreading - Akka - 调度员

转载 作者:行者123 更新时间:2023-12-04 06:45:01 25 4
gpt4 key购买 nike

我一直在阅读文档,但我不太清楚是否只有一个 Dispatcher 与每个 actor 关联,或者是否只有一个。假设我有 Actor SendSmsActor 和 Actor UpdateSmsActor,他们都会使用默认调度程序吗?或者每个 Actor 都会得到自己的默认调度程序实例?如果我有 500 个传入请求(作为批处理的一部分),并且我的 parallelism-max 设置为 300,我也不是很清楚,这 300 个线程会在 SendSmsActor 和 UpdateSmsActor 之间分配吗?

最佳答案

默认情况下,Akka 使用默认调度程序在线程上执行 actor。 调度程序Actor System 中的所有actor 都是通用的。 Akka 还提供了编写自定义调度程序的选项。您可以在调度程序中指定执行程序的类型。

线程不会在参与者之间拆分。调度程序中可用的任何空闲线程都将用于执行给参与者

默认的调度器配置是:

default-dispatcher {
type = "Dispatcher"
executor = "fork-join-executor"

fork-join-executor {
parallelism-min = 8
parallelism-factor = 3.0
parallelism-max = 64
}

thread-pool-executor {
keep-alive-time = 60s
core-pool-size-min = 8
core-pool-size-factor = 3.0
core-pool-size-max = 64
max-pool-size-min = 8
max-pool-size-factor = 3.0
max-pool-size-max = 64
task-queue-size = -1
task-queue-type = "linked"

allow-core-timeout = on
}

引用:What are the default Akka dispatcher configuration values?

关于multithreading - Akka - 调度员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56572956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com