Jakarta ee 什么时候需要在Glassfish中使用单独的域?

Jakarta ee 什么时候需要在Glassfish中使用单独的域?,jakarta-ee,hosting,glassfish,glassfish-3,Jakarta Ee,Hosting,Glassfish,Glassfish 3,如果您想在Glassfish服务器上托管多个相当独立的应用程序,是否需要单独的域?特别是: 同一域中的应用程序能否以某种方式相互干扰 同一域中的不同应用能否侦听不同的IP地址/端口 如果是这样,您何时/为什么实际使用单独的域?从逻辑角度来看,单独的域或单个域中多个应用的共存是相似的(您可以配置HTTP端口等) 一个主要的区别是,在一种情况下,一个JVM运行所有的应用程序,而在另一种情况下,您有几个JVM。这会有很大的不同。在我们的一个客户站点上,我们最初将所有内容部署在一个域/JMV中,但最终决

如果您想在Glassfish服务器上托管多个相当独立的应用程序,是否需要单独的域?特别是:

  • 同一域中的应用程序能否以某种方式相互干扰
  • 同一域中的不同应用能否侦听不同的IP地址/端口

  • 如果是这样,您何时/为什么实际使用单独的域?

    从逻辑角度来看,单独的域或单个域中多个应用的共存是相似的(您可以配置HTTP端口等)

    一个主要的区别是,在一种情况下,一个JVM运行所有的应用程序,而在另一种情况下,您有几个JVM。这会有很大的不同。在我们的一个客户站点上,我们最初将所有内容部署在一个域/JMV中,但最终决定将部署拆分为几个域/JVM,因为这样可以提供更好的性能,特别是垃圾收集时间。因此,是的,应用程序可以进行干扰,但会以非常间接的方式进行

    此外,JavaEE应用程序无法真正关闭或启动,因此域是可以打开和关闭的最小单元。在某些情况下,它很方便


    最后,每个域都有一些东西,比如应用程序。服务器日志级别、计时器持久性等。如果您想要两个应用程序具有不同的设置,则需要两个域。

    考虑这种情况:您的域中部署了两个应用程序:轻量级前端应用程序和后端处理应用程序(例如,按计划每小时运行一次任务并处理大量数据)。在这种情况下,您可能会遇到后端应用程序占用VM所有资源的问题,使前端应用程序在极端情况下无法响应,或者更糟糕的是,杀死jvm(例如内存不足错误或永久空间错误)

    如果您将其分为两个域,即使您的后端停止运行,其他应用程序也是安全的,因为它有自己的VM和内存可供使用