컴퓨터(서버) 위에 운영체제(OS)가 깔려 있고, 그 위에서 WAS(톰캣 등)이 돌아가면서 세션 정보를 메모리에 저장하고 관리한다.
1. Web 통신
1-1. Web 통신 구조
1-2. Web Server
- 사용자에게 HTML 페이지나 jpg, png와 같은 이미지를 HTTP 프로토콜을 통해 웹 브라우저에 제공하는 서버이다. 내부의 내용이 이미 만들어져 있는 정적인 요소들을 화면에 보여준다.
1-3. WAS(Web Application Server)
- 사용자가 요청한 서비스의 결과를 스크립트 언어 등으로 가공하여 생성한 동적인 페이지를 사용자에게 보여준다.
- 대표적으로 Tomcat이 있다.
- Tomcat, WildFly, JEUS 등이 있다.
- 주로 ServletContainer와 JSP Container의 기능을 한다.
1-4. Web과 WAS
- 구조: Web browser ↔ Web (html) ↔ WAS
- Web과 WAS와 Client끼리 통신을 한다.
2. WAS & Container
2-1. Container (Servlet, JSP)
- Servlet-Container
- Servlet의 생명 주기(생성,초기화,소멸)를 관리한다.
- HttpServletRequest, HttpServletResponse 객체를 생성한다.
- 요청에 따라 멀티스레딩 구성이 가능하며, 전송 방식에 따라 동적으로 페이지 구성하는 작업을 진행한다.
- 정적 로딩 처리를 한다.
- JSP-Container
- JSP 파일을 java코드로 변경해주고 class파일로 전환하여 메모리 공간에 로드한 뒤 실행 가능하게 만드는 작업(= Servlet화)을 한다.
- 처리 결과를 HTML파일로 만들어주는 작업을 진행한다.
- 동적 로딩 처리를 한다.
2-2. WebServer & WAS
참고자료
서블릿(Servlet)이 뭔지 궁금해?
자바 웹기술 역사는 서블릿 → JSP → (서블릿 + JSP) MVC 패턴 → 스트럿츠, 웹워크 -> 스프링 MVC 요런식으로 발전해왔어요. 요즘은 Spring WebFlux라는 서블릿 기반이 아닌 Web Reactive 기반을 이용하기도
jh2021.tistory.com
'Java' 카테고리의 다른 글
[Servlet] Servlet 과 HTTP 프로토콜 WAS와 Servlet 컨테이너의 관 (0) | 2025.03.18 |
---|---|
[Java] 자바 Math.pow() 함수 (0) | 2025.03.05 |
[Java] replace와 replaceAll의 차이 (0) | 2025.03.05 |
[Java] Set을 List로, List를 Set으로 (0) | 2025.03.01 |
[Java] 10진수 <-> 2진수, 8진수, 16진수 변환 (0) | 2025.03.01 |