Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala Akka遥控器/工人断开连接并隔离_Scala_Akka_Remote Server_Akka Cluster - Fatal编程技术网

Scala Akka遥控器/工人断开连接并隔离

Scala Akka遥控器/工人断开连接并隔离,scala,akka,remote-server,akka-cluster,Scala,Akka,Remote Server,Akka Cluster,遥控器系统: 代码: getnodes()是列表 application.conf: akka { log-dead-letters-during-shutdown = off actor { provider = "akka.remote.RemoteActorRefProvider" remote { enabled-transports = ["akka.remote.netty.tcp"] transport-failure-detecto

遥控器系统:

代码:

getnodes()是
列表

application.conf:

akka {
  log-dead-letters-during-shutdown = off
  actor {
    provider = "akka.remote.RemoteActorRefProvider"
    remote {
      enabled-transports = ["akka.remote.netty.tcp"]
      transport-failure-detector {
        acceptable-heartbeat-pause = 100s
      }
      watch-failure-detector {
        acceptable-heartbeat-pause = 100s
      }
      netty.tcp {
        hostname = "127.0.0.1"
        port = 2552
      }
    }
  }
}
远程工作系统: 代码:

remote.conf

akka {
  log-dead-letters-during-shutdown = off
  actor {
    provider = "akka.remote.RemoteActorRefProvider"
  }
  remote {
    enabled-transports = ["akka.remote.netty.tcp"]
    netty.tcp {
      hostname = ""
      port = 2553
    }
  }
}
错误: [警告][02/11/2014 14:50:26.728][remote akka.actor.default-dispatcher-17][akka://..../system/remote-watcher]检测到无法访问:[akka。tcp://remote@192.178.1.100:2553]
[INFO][02/11/2014 14:50:26.728][remote akka.actor.default-dispatcher-15][Remoting]地址[akka。tcp://remote@192.178.1.100:2553]现在被隔离,发送到此地址的所有邮件都将以死信的形式发送。

您的主人希望工作人员在
127.0.0.1
<,但是工作进程以计算机的默认地址进行侦听。

即使我在应用程序配置中设置了host=“”并使用默认地址,工作进程也会被隔离。请仔细阅读第一节:(特别是关于主机名设置;这适用于远程处理设置中的所有节点)
 private ActorSystem system;

  public RemoteWorker(String name) {
    Config conf = ConfigFactory.load("remote");
    int port = conf.getInt("akka.remote.netty.tcp.port");
    system = ActorSystem.create(name, conf);
  }

  private void handleShutdown() {
    Runtime.getRuntime().addShutdownHook(new Thread() {
      @Override public void run() {
        System.out.println("Shutting down remote actor system...");
        system.shutdown();
      }
    });
  }

  public static void main(String[] args) {
    String systemName = (args.length == 0) ? "remote" : args[0];
    RemoteWorker remsys = new RemoteWorker(systemName);
    remsys.handleShutdown();
  }
akka {
  log-dead-letters-during-shutdown = off
  actor {
    provider = "akka.remote.RemoteActorRefProvider"
  }
  remote {
    enabled-transports = ["akka.remote.netty.tcp"]
    netty.tcp {
      hostname = ""
      port = 2553
    }
  }
}