Что такое Application server?
Application server (Сервер приложений) — программа, предоставляющая среду для выполнения серверных приложений и управляющая их жизненным циклом в соответствии со спецификациями (например, Jakarta EE).
Сервер приложений может работать как самостоятельный веб-сервер или быть поставщиком страниц для другого веб-сервера (например, Nginx). Он берёт на себя системную поддержку: создание среды выполнения, управление потоками, идентификацию и авторизацию клиентов, организацию сессий, управление транзакциями и пулами подключений к БД.
Популярные Java-серверы приложений
| Сервер | Тип | Особенности |
|---|---|---|
| Apache Tomcat | Servlet-контейнер | Лёгкий, стандарт де-факто для Spring Boot |
| Jetty | Servlet-контейнер | Встраиваемый, лёгкий |
| JBoss / WildFly | Полный Jakarta EE сервер | Поддержка EJB, JMS, JPA |
| GlassFish | Полный Jakarta EE сервер | Эталонная реализация |
| IBM WebSphere | Полный Jakarta EE сервер | Enterprise, коммерческий |
| Oracle WebLogic | Полный Jakarta EE сервер | Enterprise, коммерческий |
На собеседовании: различайте Servlet-контейнеры (Tomcat, Jetty — реализуют Servlet API) и полные серверы приложений (WildFly, WebLogic — реализуют весь Jakarta EE стек). В мире Spring Boot чаще используется встроенный Tomcat или Jetty, без внешнего сервера приложений.