gpt4 book ai didi

tomcat - 如何强制tomcat服务器为不同的虚拟主机使用共享库和资源?

转载 作者:行者123 更新时间:2023-11-28 23:00:59 26 4
gpt4 key购买 nike

我有一个 GWT 应用程序,它在带有 tomcat 服务器 7 的 debian 上运行。这个应用程序使用连接池技术与后端数据库通信。
我有一些站点(具有不同的域),它们都使用相同的应用程序,它们之间的唯一区别是数据库连接池!
我必须为每个域创建一个虚拟主机,所有虚拟主机配置完全相似,除了指定数据库名称、用户名和密码的主机名和数据库连接池资源配置。
下面是问题:

  1. 在这种情况下,为每个域使用不同的独立虚拟主机是否正确?
  2. tomcat 是否为每个虚拟主机单独加载类和库?或者它只为所有人加载一个实例?在这种情况下,可以使用哪些技术来优化 tomcat 内存使用?
  3. 使用此解决方案,tomcat 重启时间变得太长,因为它需要重新加载所有应用程序上下文。有什么办法可以提高tomcat的重启速度?

最佳答案

  1. Web 应用程序有自己的类加载器,虚拟主机没有。因此每个主机中的每个应用程序都会有自己的类加载器。如果所有应用共享同一个库,您可以将它放在 $CATALINA_BASE/lib 中。缺点是所有应用程序都必须使用该版本并且升级它意味着重新启动整个 Tomcat 实例。

  2. 如果您使用最新版本的 Tomcat 7,则可以利用并行部署。在 server.xml 中的 Engine 元素上将 startStopThreads 设置为大于 1

关于tomcat - 如何强制tomcat服务器为不同的虚拟主机使用共享库和资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19319164/

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