0

我正在使用akka 远程部署。我使用日志记录来确保参与者是否已成功远程部署。这是我的日志信息

[adaptiveCEP-akka.actor.default-dispatcher-18] [akka.tcp://adaptiveCEP@127.0.0.1:2555/remote/akka.tcp/adaptiveCEP@127.0.0.1:2554/user/disjunction/simple-2555-0.4631423946172286] hi, I am simple-2555-0.4631423946172286
[adaptiveCEP-akka.actor.default-dispatcher-18] [akka.tcp://adaptiveCEP@127.0.0.1:2555/remote/akka.tcp/adaptiveCEP@127.0.0.1:2554/user/disjunction/simple-2555-0.4631423946172286] hi, I am Actor[akka://adaptiveCEP/remote/akka.tcp/adaptiveCEP@127.0.0.1:2554/user/disjunction/simple-2555-0.4631423946172286#1386676347]

看起来演员simple-2555-0.4631423946172286#1386676347是演员的子演员,disjunction并且都托管在同一台机器上(没有远程部署孩子)。而做监督的演员就是演员akka.tcp://adaptiveCEP@127.0.0.1:2555

根据Actor Paths 的顶级范围

“/remote” 是一条人工路径,所有参与者都驻留在该路径之下,其主管是远程参与者引用

我误解了什么吗?

如果需要

val randomRouter = actorSystem.actorOf(Props[Master],
      "disjunction")

Master.scala

val temp = context.actorOf(Props[SimpleClusterListener].withDeploy(Deploy(scope = RemoteScope(address))), "simple-" + port + "-" + Math.random())
temp ! "hi"

参考

在没有新 ActorSystem 的情况下远程创建 Akka actor

4

1 回答 1

0

不,您的演员没有在本地部署,它在远程机器上

akka.tcp://adaptiveCEP@127.0.0.1:2555/remote/akka.tcp/adaptiveCEP@127.0.0.1:2554/user/disjunction/simple-2555-0.4631423946172286] hi, I am simple-2555-0.4631423946172286

此日志项显示您的参与者正在“127.0.0.1:2555”机器上的参与者系统“adaptiveCEP”上运行,并受到“adaptiveCEP@127.0.0.1:2554”中的“分离”参与者的监督

于 2017-06-18T16:29:06.723 回答