假设在一台 Java EE 服务器上部署的 Java EE 应用很少(vendor 无意义,可能是 Glassfish、JBoss、WebLogic 等)。每个应用程序在部署的 .war 或 .ear 中包含相同的库,例如:log4j.jar。(是的,我知道最好在服务器的 ext-lib 目录中安装一个 .jar,将其共享给所有应用程序,但在这种情况下,每个人都有自己的 log4j.jar 副本)。
现在,服务器正在部署所有这些应用程序,运行:
1)一个版本的log4j.jar(可能是第一个部署的),共享给其他应用程序?
2)每个已部署应用程序的 log4j 实例数(消耗 RAM 的次数是已部署应用程序数的数倍)?
哪句话是正确的?