겉바속촉
Servlet Container 본문
728x90
반응형
Servlet Container
개념
- 서블릿을 관리해주는 컨테이너
- 클라이언트의 요청을 받아주고 응답할 수 있도록 웹서버와 소켓으로 통신
- 톰캣이 대표적이며, 실제로 웹 서버와 통신하여 JSP - Servlet이 작동하는 환경을 제공해줌
역할
- 웹서버와 통신 지원
: 서블릿 컨테이너는 통신을 손쉽게 할 수 있도록 API로 기능을 제공함
- 멀티 쓰레드 관리
: 요청이 올 때마다 쓰레드 생성 - HTTP 서비스 메소드 실행 - 쓰레드 자동 소멸
- 서블릿 life cycle 관리
: 서블릿 클래스를 로딩 후 인스턴스화 - 초기화 메소드 호출 - 요청이 오면 적절한 서블릿 메소드 호출
- 클라이언트 요청을 받은 후 해당 서블릿이 없다면 init() 메서드 호출
***init()메서드는 처음 한번만 실행되며 공통적으로 사용할 경우 오버라이딩하여 사용 - 클라이언트 요청에 따라 service()메서드를 통해 doGet() 또는 doPost() 로 응답
- HttpServletRequest, HttpServletResponse에 의해 request와 response 객체 제공됨
- 컨테이너가 종료 요청을 하는 경우 destroy()메서드가 호출되며 이 역시 한번만 실행됨
Servlet 동작 원리
톰캣 구동 --> JVM 구동 --> 서블릿을 처리할 수 있는 환경 제공
- 브라우저에 클라이언트의 서블릿 요청
- WAS안에 웹 서버가 서블릿 요청을 인식하여 컨테이너에 전달
- 서블릿이 스레드를 기동하며 해당 서블릿 객체를 생성하여 수행
- 수행 결과를 웹 서버에 전송 후 클라이언트에 전송
728x90
반응형
'IT 일기 (상반기) > JAVA' 카테고리의 다른 글
WEB 서버 & WAS (0) | 2022.05.27 |
---|---|
클래스와 객체 - 메서드 (0) | 2022.05.27 |
Servlet의 개념 (0) | 2022.05.27 |
클래스와 객체 - 개념 (0) | 2022.05.26 |
제어 흐름 - continue, break (0) | 2022.05.26 |