Configuration Akka-根据名称模式将调度程序分配给参与者
我需要根据演员的名字模式为他们分配一个定制的调度器。 名称模式如下:Configuration Akka-根据名称模式将调度程序分配给参与者,configuration,akka,Configuration,Akka,我需要根据演员的名字模式为他们分配一个定制的调度器。 名称模式如下:OptimizationManager-{id}其中id是一个变量。我尝试使用与ActorSelection相同的方法,在ActorSelection中,我可以使用通配符*: akka { actor { optimization-manager-dispatcher { type = Dispatcher executor = "fork-join-executor" }
OptimizationManager-{id}
其中id是一个变量。我尝试使用与ActorSelection相同的方法,在ActorSelection中,我可以使用通配符*
:
akka {
actor {
optimization-manager-dispatcher {
type = Dispatcher
executor = "fork-join-executor"
}
deployment {
"/OptimizationManager-*" {
dispatcher = akka.actor.optimization-manager-dispatcher
}
}
}
}
但它不起作用。在日志中,我仍然看到OptimizatinManager使用默认的dispatcher。是否可以实现配置文件中所需的功能?我知道最后的办法是使用道具在代码中执行。使用Dispatcher
明确声明您不能:
您可以使用星号作为演员路径部分的通配符匹配,
所以您可以指定:/*/sampleActor
,这将匹配所有
层次结构中该级别上的sampleActor。也可以使用通配符
在最后一个位置,匹配特定级别的所有参与者:
/someParent/*
。非通配符匹配始终具有更高的优先级
匹配比通配符更精确,因此:/foo/bar
比
/foo/*
并且仅使用最高优先级匹配请注意
它不能用于部分匹配节,例如:/foo*/bar
,
/f*o/bar等
恐怕您的/OptimizationManager-*
被认为是部分匹配