¿Apenas cómo Tomcat Classloader separa el alcance diferente del objeto Webapps en la misma JVM?

Dado que Tomcat puede cargar más de una aplicación web a la vez, y esas aplicaciones web pueden funcionar por separado y no se molestan entre sí, y funcionan en la misma JVM. Así que estoy muy confundido acerca de cómo tomcat maneja el alcance del Objeto en la misma JVM.

Por ejemplo, tengo un objeto singleton en las dos aplicaciones web diferentes, y Tomcat generará dos objetos singleton diferentes para cada uno. Siempre pensé que el objeto singleton solo tiene un objeto en la misma JVM, pero en Tomcat JVM tal vez tenga dos o más.

He leído algo de información sobre el ClassLoader, Tomcat tiene su propio WebAppClassLoader para cargar aplicaciones web. Entonces, ¿significa que el alcance del objeto aquí es el ClassLoader o estoy equivocado? ¿Alguien sabe acerca de esto o me puede dar información sobre el diseño de la memoria de trabajo de Tomcat?

Respuestas a la pregunta(7)

Su respuesta a la pregunta