我们使用 IBM 产品,通常使用 IBM Http Server(即 Apache)作为应用程序服务器的反向代理。出于性能原因,我们从 http 服务器提供静态内容(.gif、.jpg、.css、.html 等),以减轻应用程序服务器的负担。

到目前为止,我们必须将文件分发到 http 服务器并手动配置它(最好编写自定义脚本)。问题是保持所有内容同步所需的努力,尤其是当您需要更新应用程序时。

有任何 Java EE 产品支持这种“开箱即用”吗?有没有办法让应用程序服务器自动执行此操作,例如在集群配置中,主节点负责将应用程序分发到其他节点并保持所有内容同步。

有帮助吗?

解决方案

到目前为止,我们必须将文件分发到http服务器并手动配置它(最多编写自定义脚本。)

不确定我是否得到了配置部分。通常很容易区分静态内容与 JSP 和 Servlet(一旦完成,就不会发生太大变化)。

问题是需要付出努力才能保持一切同步,尤其是当您需要更新应用程序时。

自动化!和 梅文 (或者 蚂蚁, ,但这需要更多的工作),很容易从 Web 项目创建单独的程序集来处理此问题:Java EE 节点的 WAR,HTTP 服务器的静态内容的 zip。

有任何 Java EE 产品支持这种“开箱即用”吗?

据我所知,不。令人惊讶的是,部署是 Java EE 的薄弱领域。但是您可以使用 Maven 和/或等工具达到相当程度的自动化 控制层.

其他提示

我不熟悉的IBM产品,但通常的做法是将应用程序部署(大部分的WAR)的目录,而不是战争的文件,这样你就可以访问自己的文件。比,你的部署目录映射到Apache的别名,所以它可以从那里提供静态内容。请注意,你需要阻止所有访问到WEB-INF目录下,并且所有请求路由到文件(.JSP,.jsf,。做,.action等)的JSP应用服务器。

禁止WEB-INF完成使用以下指令:

<DirectoryMatch "(WEB-INF|META-INF)">  
  Order allow,deny 
  Deny from all 
  AllowOverride None 
</DirectoryMatch>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top