用于远程路由的 Akka 目标节点
Akka target nodes for remote routing
我使用以下方法创建了一个远程环境来部署路由:
Routers with Remote Destinations
deployment {
/router1 {
router = round-robin-pool
nr-of-instances = 7
cluster {
enabled = on
allow-local-routees = off
max-nr-of-instances-per-node = 3
use-roles = ["backend"]
target {
nodes = ["akka.tcp://ClusterSystem@127.0.0.1:2560", "akka.tcp://ClusterSystem@127.0.0.1:2570"]
}
}
}
}
这行不通。最后,任何加入的新节点都将部署路由。我认为此配置意味着 "only" 在目标节点上将部署 routees,但它部署在 "any" 新节点上。
是这样的吗?如何使路由只部署在特定节点上?一定是哪里出了问题,否则添加 "target" 配置绝对没有任何作用。
中所述
akka.actor.deployment {
/parent/remotePool {
router = round-robin-pool
nr-of-instances = 10
target.nodes = ["akka.tcp://app@10.0.0.2:2552", "akka.tcp://app@10.0.0.3:2552"]
}
}
以上配置,将克隆 Props
中定义的 actor remote pool
10
次,并将其均匀分布部署在两个给定的目标节点上。
应用此配置
deployment {
/router1 {
router = round-robin-pool
nr-of-instances = 7
target {
nodes = ["akka.tcp://ClusterSystem@127.0.0.1:2560","akka.tcp://ClusterSystem@127.0.0.1:2570"]
}
}
}
确保 127.0.0.1:2560
处的 ClusterSystem
和 127.0.0.1:2570
处的 ClusterSystem
是 运行。
我使用以下方法创建了一个远程环境来部署路由:
Routers with Remote Destinations
deployment {
/router1 {
router = round-robin-pool
nr-of-instances = 7
cluster {
enabled = on
allow-local-routees = off
max-nr-of-instances-per-node = 3
use-roles = ["backend"]
target {
nodes = ["akka.tcp://ClusterSystem@127.0.0.1:2560", "akka.tcp://ClusterSystem@127.0.0.1:2570"]
}
}
}
}
这行不通。最后,任何加入的新节点都将部署路由。我认为此配置意味着 "only" 在目标节点上将部署 routees,但它部署在 "any" 新节点上。
是这样的吗?如何使路由只部署在特定节点上?一定是哪里出了问题,否则添加 "target" 配置绝对没有任何作用。
akka.actor.deployment {
/parent/remotePool {
router = round-robin-pool
nr-of-instances = 10
target.nodes = ["akka.tcp://app@10.0.0.2:2552", "akka.tcp://app@10.0.0.3:2552"]
}
}
以上配置,将克隆 Props
中定义的 actor remote pool
10
次,并将其均匀分布部署在两个给定的目标节点上。
应用此配置
deployment {
/router1 {
router = round-robin-pool
nr-of-instances = 7
target {
nodes = ["akka.tcp://ClusterSystem@127.0.0.1:2560","akka.tcp://ClusterSystem@127.0.0.1:2570"]
}
}
}
确保 127.0.0.1:2560
处的 ClusterSystem
和 127.0.0.1:2570
处的 ClusterSystem
是 运行。