在scala应用程序中将框架作为服务播放

在scala应用程序中将框架作为服务播放,scala,playframework,Scala,Playframework,我有个小问题。我必须创建一个scala应用程序。这个应用程序必须做一些事情。创建线程和其他东西。这对于这个问题并不重要 但要与此应用程序交互,有必要创建一个webinterface。我想通过播放创建这个界面。 问题是,我必须将play应用程序集成到我的普通应用程序中。作为组成部分。在应用程序运行的同时,他还必须启动play组件。如果这个工作进程某个时候失败了,请重新启动它 可能吗?如果是,您会建议哪种方式。您可以在play framework启动时调用正常的应用程序。()更具体地说,全局对象中的

我有个小问题。我必须创建一个scala应用程序。这个应用程序必须做一些事情。创建线程和其他东西。这对于这个问题并不重要

但要与此应用程序交互,有必要创建一个webinterface。我想通过播放创建这个界面。 问题是,我必须将play应用程序集成到我的普通应用程序中。作为组成部分。在应用程序运行的同时,他还必须启动play组件。如果这个工作进程某个时候失败了,请重新启动它


可能吗?如果是,您会建议哪种方式。

您可以在play framework启动时调用正常的应用程序。()更具体地说,全局对象中的onStart方法可能是调用普通代码的正确位置

import play.api._

object Global extends GlobalSettings {
  val yourInstance = new YourInstance()
  override def onStart(app: Application) {
    yourInstance.start()
  }
}

此外,您可以将线程模型更改为参与者模型。()

非常感谢。这意味着我的应用程序必须是Play应用程序。这需要导入我的其他应用程序吗?我说的对吗?是的,我认为这是一种简单的方法。但通过这种方法,我只有启动的play应用程序的资源。不是吗?如果是,一个复杂的应用程序可能会耗尽内存。构建play框架jar并通过主应用程序启动的方法是什么。你认为他们的方法好吗?顺便说一下,看看。“spray是一个开源工具包,用于在Scala和Akka之上构建基于REST/HTTP的集成层。它具有异步、基于参与者、快速、轻量级、模块化和可测试性等特点,是将Scala应用程序连接到世界的一个好方法。”