我之前也遇到过同样的问题: “Getting errors with remote actor deployment in Akka 2.0 RC2”
你是怎么解决的?我正在使用 Akka 2.1.2,但我认为我的问题是概念。
我创建 Actor :
ActorRef actorOf = system.actorOf(new Props(HelloWorld.class), "injbct");
然后在其他 jvm 中我尝试查找它:
ActorRef actorFor = system.actorFor("akka://KSystem@127.0.0.1:2552/user/injbct");
问候,何塞
最佳答案
我发现,如果您在同一台机器上访问远程参与者,则必须在远程参与者的配置和参与者用户中的参与者声明中使用本地主机地址 127.0.0.1 或计算机的实际 IP 地址,即它们不能混合。
远程参与者配置
remote {
transport = "akka.remote.netty.NettyRemoteTransport"
netty {
hostname = "127.0.0.1"
port = 2554
考虑机器的 IP 地址为 1.2.3.4,那么
这有效
val workerRouter =
context.actorFor("akka://PrimeWorkerKernel@127.0.0.1:2554/user/PrimeWorkerActor")
这不会并导致连接被拒绝
val workerRouter =
context.actorFor("akka://PrimeWorkerKernel@1.2.3.4:2554/user/PrimeWorkerActor")
关于java - Akka 远程处理 : Connection refused: no further information in "tell" method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16570844/