如何使用控制台应用程序与Akka始终运行的应用程序进行通信



我一直在阅读Akka文档,但我不知道该怎么做才能完成我的想法。

我想创建一个小的Akka应用程序(应用程序a),旨在"始终运行"。此应用程序不打算部署在云架构上,而是部署在一台机器上。

我还想为这个应用程序添加一些"人机交互"功能,所以我想创建一个控制台应用程序(应用程序B),使某人能够向应用程序a中的主要参与者发送消息,例如"关闭"(而不是按Ctrl C)或"立即强制执行任务X"。

两个应用程序都将在同一台机器上运行,我想在那台机器上连接一个终端并启动控制台应用程序。

所以到目前为止我还没有得到的是:

1) 我应该在应用程序A上使用Remote Actors才能从应用程序B中看到它吗

2) 是否有可能在两个应用程序之间使用Actor消息进行通信,或者在这个特定场景(控制台->应用程序)中,是否有其他可取的方法?注意,我不需要这种通信的安全标准

3) 如果我可以向本地参与者发送参与者消息,则为"远程参与者"描述的路由系统schema://domain:port/path"也适用于本地参与者?

最后,作为一个一般的指导方针,考虑一下我想保持简单。。。

1)为什么不呢。您也可以考虑使用Spray,它将允许您通过http访问。甚至使用Typesafe控制台-http://resources.typesafe.com/docs/console/manual/getting-started.html

2) 没关系。你唯一应该记住的是,Akka Remote没有保证交付。如果你没有连接问题,那应该没问题。

3) 是的,但进程将连接到自己的端口。

相关内容

最新更新