gpt4 book ai didi

tomcat - 上下文名称可能与 Tomcat 并行部署的 WAR 名称不同

转载 作者:行者123 更新时间:2023-11-28 22:13:36 26 4
gpt4 key购买 nike

我正在处理的应用程序目前在 tomcat 中的多个上下文中运行在生产环境中,我们通过为每个文件创建单独的 context.xml 文件来实现这一点,我们在其中指定指向每个文件中相同目录的文档库。我们目前正在评估 Tomcat 的并行部署功能,但我很难找到一种方法让它与我们当前的设置一起工作。我已经阅读了 tomcat 文档 ( http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Naming ),它似乎不支持我们当前的设置,但我想在我们更改 tomcat 的设置方式之前联系社区并询问。如果我们为每个上下文创建单独的 war 并将它们单独部署在 webapps 文件夹中,我就能够让它工作。

有谁知道我们当前的部署机制是否可以与并行部署过程一起使用,如果可以,那将如何实现?

在此先感谢您的指导。

最佳答案

您可以通过创建指向您的 Web 应用程序的版本化上下文文件来实现所需的功能。例如,如果您有一个名为 myWebsite 的上下文,那么您需要创建一个名为 myWebsite.xml 的上下文文件。这将为您的应用程序设置 docBase 值。下面提供了一个示例。

File:   /{tomcat.base}/conf/Catalina/localhost/myWebsite.xml
<Context reloadable="true" crossContext="true" docBase="/Users/jeremy/myapp"></Context>

然后您可以通过将应用程序复制到它的新位置(例如:/Users/jeremy/myapp-v2)来进行并行部署,然后创建一个指向该新位置的新上下文文件。新的上下文文件应该像所有标准并行部署一样包含版本号。

File:   /{tomcat.base}/conf/Catalina/localhost/myWebsite##001.xml
<Context reloadable="true" crossContext="true" docBase="/Users/jeremy/myapp-v2"></Context>

一旦 tomcat 找到新的上下文文件,就会加载新版本的应用程序,并将新用户发送到新版本的应用程序。现有用户将在 session 到期后迁移到新版本。

感谢 tomcat 用户邮件列表中帮助我解决此问题的每个人 http://tomcat.10.x6.nabble.com/Tomcat-7-0-27-on-Mac-OSX-Lion-Is-it-Possible-to-use-Tomcat-Parallel-Deployment-when-the-Context-Namee-td5000908.html#a5000920

关于tomcat - 上下文名称可能与 Tomcat 并行部署的 WAR 名称不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17373078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com