개발자 기술 면접 준비/정리

웹컨테이너란?

ucong 2021. 6. 21. 15:27

웹 컨테이너 (=서블릿 컨테이너)

- JAVA EE 명세 중 Servlet API만 구현할 수 있는 것

- 서블릿을 관리해주는 것, 서블릿의 생명주기를 관리하고 요청에 따른 스레드를 생성해준다.

- 클라이언트의 Request를 받아주고 Response를 보낼 수 있게 웹 서버와 소켓을 만들어서 통신을 해준다.

- URL과 특정서블릿을 맵핑하여 URL 요청이 올바른 접근 권한을 갖도록 보장해준다.

 

쉽게 말해, WAS 내부에서 개발자 대신 서블릿 관리 해주는 것!

 

동작

1. WAS의 Web Server는 Client의 요청이 동적인지 정적인지 파악한다.

2. 동적일 경우 Web Server에서 처리하기 힘드므로 WebContainer에게 보낸다.

3. Web Container의 Sevlet이 동적 컨텐츠를 생성한다.

4. 생성된 동적 컨텐츠를 Web Server에 보내고 Web Sever는 Client에게 보낸다.

 

* 소켓 - 네트워크 상에서 서버와 클라이언트 두 개의 프로그램이 특정 포트를 통해 양방향 통신이 가능하게 만들어 주는 소프트웨어 장치

 

 

 

[ 참고 ]

https://park-answer.netlify.app/2019-12-22-webserver-vs-was/

'개발자 기술 면접 준비 > 정리' 카테고리의 다른 글

리플렉션이란?  (0) 2021.06.30
리팩토링이란?  (0) 2021.06.29
프록시서버란?  (0) 2021.06.19
ORM이란  (0) 2021.06.10
프레임워크 VS 라이브러리  (0) 2021.06.09