Dans un contexte d'architecture microservices utilisant des containers et le concept ImmutableServer, l'utilisation d'un serveur d'application java (tomcat...) fournit uniquement le framework (servlets, ...) nécessaire à l'application java.
Les fonctionnalités de gestion des applications (plusieurs applis dans la même JVM, déploiement à chaud, ...) sont en effet directement gérées au niveau containers (1 applis = 1 JVM = 1 container, déploiement d'un nouveau container en cas de mise à jour de l'applis).
En fin d'article, il est également question de SpringBoot (http://projects.spring.io/spring-boot/) et CamelBoot (https://camel.apache.org/camel-boot) qui permettent de démarrer directement une JVM avec son framework sans toute la lourdeur du serveur d'application.