티스토리 뷰
웹서버(Web Server)와 WAS(Web Application Server)
* 웹서버
- 클라이언트가 서버에 페이지를 요청하면, 요청을 받아 정적 컨텐츠를 제공하는 서버
- 클라이언트에서 요청이 올 때, 가장 앞단에서 요청에 대한 처리를 한다.
- 웹서버만 구축된 서버는 페이지, 이미지 등 모두 정적 데이터만 생성한다.
- ex) Apache, Nginx, IIS(Internet Information Server) 등
* WAS
- 동적 컨텐츠를 제공하기 위해 만들어진 애플리케이션 서버
- 웹 서버로부터 요청이 오면, 컨테이너가 받아서 처리
- 웹상에서 사용하는 컴포넌트들을 올려놓고 사용하게 되는 서버
- 쓰레드 생성 → 서블렛 호출 → 함수 호출 → 페이지 전달 → Response 객체를 HTTPResponse로 변환 → 쓰레드, 객체 소멸 (이 내용은 아래 한번 더 설명)
- JBoss, Jeus, Tomcat(JSP/Servlet 컨테이너의 기능은 있지만, EJB는 없어서 WAS가 아니라는 의견도 있다)
《 EJB : Enterprise JavaBeans, 자바로 서버 측 비지니스 로직을 작성하기 위한 서버측 컴포넌트 모델 》
* 컨테이너
- JSP와 서블릿을 실행시킬 수 있는 소프트웨어를 웹 컨테이너 또는 서블릿 컨테이너라고 한다.
- 웹서버에서 JSP를 요청하면 톰캣에서는 JSP를 서블릿으로 변환하여 컴파일을 수행, 서블릿의 수행 결과를 웹서버에 전달한다.
- ex) Servlet 컨테이너, JSP 컨테이너, EJB 컨테이너
웹서버와 WAS는 동적 서버 컨텐츠를 수행하느냐 아니면 정적 서버 컨텐츠를 수행하느냐의 차이이다.
정적인 HTML이나 이미지를 제공한다면 ? 웹서버
동적인 처리를 제공한다면 ? WAS
① 웹 서버로부터 온 요청을 컨테이너가 받아서 처리
② 쓰레드를 생성하고 요청(HttpServletRequest), 응답(HttpServletResponse) 객체를 생성하여 전달
③ 컨테이너는 서블릿을 호출
④ 호출된 서블릿의 작업을 담당하는 쓰레드(①번에서 생성)는 요청에 따라 함수를 호출(doPost()/doGet())
⑤ 호출된 함수에 따라 생성된 동적 페이지를 Response 객체에 실어서 컨테이너에 전달
⑥ Response 객체를 HTTPResponse로 변환하여 웹서버에 전달, 생성된 쓰레드 종료하고 요청, 응답 객체 소멸
'개념 공부' 카테고리의 다른 글
XML과 JSON 특징 그리고 차이점 (0) | 2019.02.19 |
---|---|
[네트워크/통신] 소켓이란? TCP와 UDP, 소켓통신의 흐름 (0) | 2019.02.14 |
- Total
- Today
- Yesterday
- json 예제
- nodejs특징
- Node.js
- 소켓흐름
- tcp예제
- nodejs
- 노드제이에스
- Node실행
- JavaScript
- 웹서버와 WAS
- JSON
- nodejs설치
- JSON 파싱
- img.src
- Json Parser
- JavaScript Object Notation
- json데이터
- web application server
- 엑스엠엘
- 노드 특징
- udp예제
- json parsing
- 자바객체
- 자바스크립트
- javascript obj
- json생성
- 데이터교환
- 파싱 예제
- 제이슨
- 제이슨 파싱
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |