我们正在尝试创建几个节点级别参与者 [池路由器] 用于应用级别管理、本地路由和节流目的。
提到节点特定角色作为这些参与者的目标角色,以进行严格的本地路由。
下面是示例代码和 hocon。
//// In App Start - Actor is initialized and stored in static container
var props = Props.Create(() => new ThrottlerActor()).WithRouter(FromConfig.Instance);
actorSystem.ActorOf(props, "ThrottlerActor");
## hocon ##
/ThrottlerActor{
router = round-robin-pool
nr-of-instances = 100
cluster {
enabled = on
allow-local-routees = on
max-nr-of-instances-per-node = 10
use-role = node1
}
}
但是当我们向这个actor发送消息时,它的行为就像一个集群actor。它将第 n+1 个 [n = max-nr-of-instances-per-node] 消息重定向到不同节点中的相似参与者。看起来好像角色设置被忽略了。
我们甚至尝试禁用集群 [cluster -> enabled = off 并且还通过从 hocon 中删除集群配置]。但它没有用。在用户监护人之下创建此路由器的那一刻,参与者的行为就好像它是一个集群参与者。
请指教。