【问题标题】:When is it beneficial to have multiple Play applications instead of one monolithic one?什么时候拥有多个 Play 应用程序而不是一个单一的应用程序是有益的?
【发布时间】:2010-10-26 14:14:37
【问题描述】:

我已经决定使用 Play 框架来重写我们的 Intranet 门户。我们的门户包含许多松散相关的内容,因此我正在寻求有关是否或如何将其拆分为多个 Play 应用程序的建议。

使其成为多个应用程序的后果是什么?单点登录仍然可行吗?访问控制如何受到影响?我是否可能必须在它们之间复制大量代码/配置?在决定将事物分开的位置时,我还应该考虑什么?

【问题讨论】:

    标签: java playframework


    【解决方案1】:

    首先我会考虑模块,因为否则你必须启动很多应用程序,这会增加内存消耗。只有当您的网站负载很重,以至于您需要多个服务器时,这才无关紧要。

    单点登录仍然可行吗?我会说,是的。您可以将数据存储在 cookie 中,但必须确保其他 url 可以读取它。

    我是否可能需要在它们之间复制大量代码/配置?好吧,如果您使用类似的数据库,与模块相比,这将是另一个缺点,但我不会担心这 1 个配置文件。多个应用程序中需要的代码可以通过 jar 文件作为库轻松共享,或者您为此使用模块。

    【讨论】:

    • 并没有真正研究过模块,因为我认为它们是用于可重用组件的,但在阅读了它们之后,它们看起来像是一个很好的解决方案。基本上结构为单独的应用程序,但在主应用程序中运行。
    【解决方案2】:

    我后来发现,在服务器端无状态意味着 Play 使用存储在 cookie 中的 HMAC 哈希以及用户名来跟踪会话。如果要针对同一组凭据(在我的例子中为 OpenLDAP)对多个 Play 应用程序进行身份验证,它们只需要在 conf/application.conf 中配置相同的 application.secret 即可实现单点登录。

    【讨论】:

      猜你喜欢
      • 2011-06-14
      • 1970-01-01
      • 1970-01-01
      • 2023-01-13
      • 2011-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多