Web Container
🧺 Web Container란?
정의
Web Container는 Servlet과 JSP를 실행하고 관리하는 실행 환경이다. 웹 요청을 받아 서블릿 객체를 생성, 실행, 관리한다.
🎯 주요 역할
- 요청을 받아 Servlet을 실행한다.
- Servlet 생명주기를 관리한다.
HttpServletRequest,HttpServletResponse를 생성한다.- 세션과 요청/응답 처리를 돕는다.
포인트
Web Container는 서블릿을 실행하는 관리 환경이라고 이해하면 좋다.
🧱 대표 예시
- Tomcat
- Jetty
- Undertow
🔄 요청 처리 흐름
- 클라이언트 요청이 들어온다.
- Web Container가 요청을 해석한다.
- Servlet 객체를 찾거나 생성한다.
request,response객체를 만든다.service()와doGet(),doPost()같은 메서드를 호출한다.- 응답을 반환한다.
🧩 서블릿 생명주기
init()service()destroy()
정리
Web Container는 서블릿 객체의 생성부터 종료까지를 관리한다.
🌐 WAS와의 관계
- Web Container는 WAS의 핵심 구성요소 중 하나다.
- WAS는 Web Container 기능 외에도 비즈니스 로직, 트랜잭션, 세션 등 더 넓은 역할을 수행할 수 있다.
⚠️ 주의할 점
- 요청마다 스레드가 생성되거나 할당될 수 있다.
- 공유 필드 사용 시 동기화를 고려해야 한다.
- 서블릿은 상태를 많이 들고 있지 않도록 설계하는 것이 좋다.
🧾 정리
Web Container는 Servlet/JSP를 실행하고 관리하는 환경이다. WAS 안에서 동작하며, 요청과 응답을 실제 코드로 연결하는 핵심 역할을 한다.
댓글남기기