一尘不染

如果Tomcat在两个Web应用程序中,它们是否两次将同一库文件加载到内存中?

tomcat

我在tomcat/webapps文件夹下有两个应用程序。

tomcat/webapps/App1
tomcat/webapps/App2

两个应用程序共享相同的库。例如存储在中tomcat/webapps/App1/WEB-INF/lib

两个库是否都在内存中加载了两次?

我应该把这些共享库放进去tomcat/server/lib吗?


阅读 293

收藏
2020-06-16

共1个答案

一尘不染

如您在这里看到的,Tomcat在您的服务器上为每个webapp创建一个类加载器。因此,如果您的webapp1和webapp2共享同一个库,则该库实际上将加载两次。

如果该库由Tomcat服务器上运行的 所有 Web应用程序共享,则最终可以将其放在公共目录(tomcat-dir / common / lib)中。

2020-06-16