라이브러리는 도서관 아닌가요

JSP 1 - 웹 서버의 동작 (Web, WAS, Servlet) 본문

Java/JSP

JSP 1 - 웹 서버의 동작 (Web, WAS, Servlet)

veryhi 2022. 1. 4. 01:28

 

실행 흐름

사용자 → request → 웹 서버WASweb/server app의 코드 실행 → DB 결과 반환 → WAS → 웹 서버 → response → 사용자

 

 

 

 

 

여기서 말하는 웹 서버(Web Server)란?

Apache, Nginx 같은 프로그램으로 사용자의 요청을 가장 먼저 받는 녀석이다.

 

1. 정적 데이터 요청 → 바로 응답

2. 동적 데이터 요청 → WAS에게 위임 → WAS가 처리 후 웹 서버한테 반환 → 응답

 

 

 

 

 

Servlet이란?

각각의 read, update, delete 따위에 대한 사용자 요청을 처리를 하는 server application 조각들이다.

 

html을 이용하여 응답하며, MVC에서 Controller와 대응된다.

 

왜 이렇게 조각을 내서 사용할까?

 

당연히 성능이랑 관련이 있다.

 

매번 요청이 들어올 때마다,

 

모든 기능을 일일이 로드시키지 않아도 되기 때문이다.

 

<예시>

www.이것이웹주소다.com/컨텍스트따위/서블릿1번 

www.이것이웹주소다.com/컨텍스트따위/서블릿2번

www.이것이웹주소다.com/컨텍스트따위/read

www.이것이웹주소다.com/컨텍스트따위/delete

 

 

 

 

 

Tomcat

일반적으로 Java 웹 개발을 할 때 사용되는 WAS 프로그램이다.

 

 

 

 

 

WAS

동적으로 데이터를 제공하기 위한 어플리케이션 서버이다. (ex. DB 조회)

 

JSP/Servlet 따위가 동작하기 위한 환경을 제공한다.

 

서블릿 컨테이너라고도 한다.

 

다시 말해 이 컨테이너가 JSP/Servlet을 실행시킨다.

 

그리고 웹 서버와

 

httpServletRequest와 httpServletResponse 객체를 통해 대화한다.

 

httpServletRequest == 입력 담당

httpServletResponse == 출력 담당

Comments