Jetty와 Tomcat 모두 자바 웹 애플리케이션 서버입니다. 두 서버의 가장 큰 차이점은 내장 컨테이너와 외장 컨테이너에 대한 지원입니다.

Tomcat은 JSP와 Servlet 컨테이너로서 설계되었으며, 대부분의 경우 외부 웹 서버(예: Apache)와 함께 사용됩니다. Tomcat은 Apache와의 연결 및 프록시 설정이 필요하며, 일반적으로 배포할 때는 외부 서비스에서 Tomcat에 대한 적절한 포트 및 엔드포인트를 설정해야 합니다.

반면에 Jetty는 내장형 서버로서, 웹 애플리케이션과 HTTP 서버를 동시에 실행할 수 있습니다. Jetty는 단일 JAR 파일로 제공되며, 애플리케이션 서버의 인스턴스를 시작하고 종료하는 것이 매우 쉽습니다. 이러한 이유로 Jetty는 마이크로서비스 아키텍처에서 자주 사용되고 있습니다.

Jetty와 Tomcat의 기능적 차이점은 매우 적습니다. 둘 다 JSP 및 Servlet 스팩을 준수하며, 둘 다 스레드 기반의 비동기 처리를 지원합니다. 그러나 Jetty는 더 가볍고 빠르며, 메모리 사용량이 적고 확장성이 뛰어나다는 장점이 있습니다. 반면에 Tomcat은 사용하기 쉽고 안정적인 성능을 제공하는 데 더 초점을 맞추고 있습니다.

Jetty와 Tomcat은 각각의 장단점이 있으므로, 사용하려는 목적과 상황에 따라 선택할 수 있습니다. 일반적으로 Jetty는 단일 애플리케이션을 빠르게 배포하고 실행하는 데 적합하며, Tomcat은 대규모 애플리케이션 및 웹 서버와의 통합에 적합합니다

👨🏻‍💻 Undertow 적용하기 (다른 WAS 적용해보기)

Undertow