Sockets Akka远程连接

Sockets Akka远程连接,sockets,tcp,akka,akka-cluster,akka-remote-actor,Sockets,Tcp,Akka,Akka Cluster,Akka Remote Actor,我有两个应用程序,分别是app1和app2。在机器1上,app1和app2都运行,但在机器2上只有app2运行,因为大部分工作由app2完成。这些应用程序使用Akka 使用akka远程处理,我希望能够将消息从机器1上的app1传递到机器2上的app2。app1和App2在同一台机器上时能够相互交互 但是,当计算机1上的应用程序1尝试连接到计算机2上的应用程序2时,会出现以下错误 EndpointWriter-AssociationError[akka。tcp://deal-rest@127.0.

我有两个应用程序,分别是app1和app2。在机器1上,app1和app2都运行,但在机器2上只有app2运行,因为大部分工作由app2完成。这些应用程序使用Akka

使用akka远程处理,我希望能够将消息从机器1上的app1传递到机器2上的app2。app1和App2在同一台机器上时能够相互交互

但是,当计算机1上的应用程序1尝试连接到计算机2上的应用程序2时,会出现以下错误

EndpointWriter-AssociationError[akka。tcp://deal-rest@127.0.0.1:4242]->[akka。tcp://deal@:4241]:错误[无效地址:akka。tcp://deal@:4241] [ akka.remote.InvalidAssociation:无效地址:akka。tcp://deal@:4241 原因:akka.remote.transport.transport$InvalidAssociationException:连接被拒绝:/:4241

当我跑的时候 netstat-a | egrep | Proto | LISTEN |在机器2上,我得到以下响应 tcp6 0本地主机:4241[:]:*侦听

这表示app2正在运行,并且能够在4241上侦听

此外,端口4241在机器1和2上打开


任何建议都会有帮助。谢谢。

看起来您的应用程序已绑定到计算机2上的localhost接口。它应该绑定到公共接口(类似于
192.168….
,而不是
127.0.0.1
/
localhost
),以便外部网络可以访问。您可以远程登录到它以检查:

telnet machine2hostname 4241