喜欢远程连接

Akka Remoting Connection

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

使用 akka remoting,我希望能够将消息从机器 1 上的 app1 传递到机器 2 上的 app2。当 app1 和 2 在同一台机器上时,它们能够相互交互。

然而,当机器 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

当我运行 网络统计-a | egrep 'Proto|LISTEN' 在机器 2 上,我得到以下响应 tcp6 0 0 localhost:4241 [::]:* 收听

这表示 app2 运行ning 并且能够侦听 4241。

此外,端口 4241 在 machine1 和 2 上打开。

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

您的应用似乎绑定到机器 2 上的本地主机接口。它应该绑定到 public 接口(类似于 192.168....,而不是 127.0.0.1/localhost) 可以被外部网络访问。你可以远程登录它来检查:

telnet machine2hostname 4241