An embedded server bundles Tomcat, Jetty, or Undertow directly inside the Spring Boot JAR, trading some server-level control for a much simpler, more portable deployment model.
Key Points: • Pro: deployment is a single self-contained JAR runnable with java -jar, with no separate server installation. • Pro: faster local setup and a natural fit for containerization, since a Dockerfile just needs the JAR. • Pro: each service can run its own isolated server instance, which suits a microservices architecture well. • Con: less fine-grained control over server-level configuration compared to a dedicated, hand-tuned external server. • Con: not ideal when many applications need to share one centrally managed server for licensing, resource pooling, or administrative reasons.
Example: A team running dozens of small microservices benefits from embedded servers since each service is independently deployable, whereas a large enterprise consolidating many legacy apps onto one shared, centrally administered Tomcat cluster benefits more from external deployment.
Interview Tip: A concise interview answer is:
"Embedded servers make deployment trivially simple and portable -- one JAR, run with java -jar, which fits microservices and containers well. The tradeoff is less control over shared server-level configuration, which matters more in enterprise setups where many applications need to run on one centrally managed server."