我想使用scala从本地计算机启动远程参与者。我可以在远程计算机上开始运行演员而不在远程计算机中手动启动某种服务器程序吗。我有一个大师级的演员,他必须开始一些远程演员。那么我该怎么做有什么想法吗?或者我可以在不执行远程计算机上的某种程序的情况下执行它吗?为了启动新的远程参与者,我必须首先连接到远程计算机。
当然不能;那将是一个巨大的安全漏洞!
有关启动akka服务所需在远程计算机上运行的内容,请参阅akka文档。
您需要有一个程序在您必须连接的远程端运行。在该程序中,有一个actor,它可以侦听来自本地计算机的消息并创建其他actor。
例如,本地端:
remoteActor ! Props(new SomeActor)
远程侧:
def receive = {
case p @ Props(_,_,_,_) =>
val actor = context.actorOf(p)
sender ! actor
//...
}