스프링부트는 서버가 아니다?!

lilseongwon·2022년 10월 11일
4
post-thumbnail

이게 뭔..💣

제목 그대로이다. 이는 가장 오해하기 쉬운 것중 하나인데,
스프링 부트는 서버가 아니다. 스프링 부트 자체는 그냥 내장 서블릿 컨테이너나 스프링 프레임워크를 사용하기 쉽게 해주는 툴이다.
서버는 Tomcat, Netty, Jetty, Undertow이고, 이들은 자바 코드로 서버를 만들 수 있는 기능을 제공한다.

Tomcat


아파치 톰캣(Apache Tomcat)은 아파치 소프트웨어 재단에서 개발한 서블릿 컨테이너(또는 웹 컨테이너)만 있는 WAS(Web Application Server)이다.

컨테이너 : JSP, Servlet을 실행시킬 수 있는 소프트웨어

서블릿(Servlet) : 클라이언트의 요청을 받고 요청을 처리하여 결과를 클라이언트에게 제공하는 자바 인터페이스

톰캣은 웹 서버와 연동하여 실행할 수 있는 자바 환경을 제공하여 자바서버 페이지(JSP)와 자바 서블릿이 실행할 수 있는 환경을 제공하고 있다. DB처리와 같은 동적인 기능들을 가공하여 HTML파일로 만들어 클라이언트에게 제공한다. (8080 포트)

스프링 서버 원리🔬

Spring Boot Application을 만들면 기본적으로 의존성에 Tomcat이 들어와있다.
우리가 톰캣을 만들지 않아도 자동설정으로 톰캣, 내장 서블릿 컨테이너가 만들어진다고 간단히 이해하면 된다.

참고
https://yadon079.github.io/2021/spring%20boot/servlet-container

https://velog.io/@falling_star3/web-Web-Server%EC%99%80-WASWeb-Application-Server

profile
스프린트가 아닌 사이클링

0개의 댓글