まず、Akka Remoting のドキュメントを読む必要があります。次に、pom ファイルにリモーティングの依存関係があることを確認します。
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-remote_2.10</artifactId>
<version>2.1.4</version>
</dependency>
次に、両方の側 (呼び出し側と受信側はapplication.conf
、リモート ドキュメントの例のように、ファイルにリモート構成を含める必要があります。
akka {
actor {
provider = "akka.remote.RemoteActorRefProvider"
}
remote {
transport = "akka.remote.netty.NettyRemoteTransport"
netty {
hostname = "127.0.0.1"
port = 2552
}
}
}
アクター ref プロバイダーがRemoteActorRefProvider
デフォルトではなく に設定されていることがわかりますLocalActorRefProvider
。送信側のアクター側でこれがないと、うまくいきません。また、netty バインディング情報がセットアップされていることもわかります。これはActorSystem
、リモート接続とメッセージをリッスンする受信アクター側で非常に重要です。ドキュメントの手順に従って受信側のアクター システムを起動すると、うまくいくActorSystem("KSystem")
はずです。