웹 서버와 WAS
웹 서버 란?
웹 서버란 HTTP 프로토콜을 기반으로 클라이언트가 웹 브라우저에서 어떠한 요청을 하면 그 요청을 받아 정적 컨텐츠를 제공하는 서버이다. 정적 컨텐츠란 단순 HTML 문서, CSS, 이미지, 파일 등 즉시 응답 가능한 컨텐츠이다.
WAS(Web Application Server) 란?
웹 서버 + 웹 컨테이너 구성
WAS란 DB 조회 혹은 다양한 로직 처리를 요구하는 동적 컨텐츠를 제공하기 위해 만들어진 Application 서버이다.
즉, HTTP 프로토콜을 기반으로 사용자 컴퓨터나 장치에 애플리케이션을 수행해주는 미들웨어이다.
웹 애플리케이션 서버는 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며, 주로 데이터베이스 서버와 같이 수행이 된다.
결과적으로, 웹 서버 + 웹 컨테이너로 웹 상에서 사용하는 컴포넌트를 올려놓고 사용하게 되는 서버이다.
(여기서 웹 컨테이너란, JSP와 Servlet을 실행시킬 수 있는 SW를 웹 컨테이너라고 한다.)

WAS 기본 기능
- 프로그램 실행 환경과 데이터베이스 접속 기능을 제공한다.
- 여러 개의 트랜잭션을 관리한다.
- 업무를 처리하는 비즈니스 로직을 수행한다.
- Web Service 플랫폼으로서의 역할
WEB과 WAS 차이점
Web Container의 유무로 WEB 과 WAS 를 나눌수 있으며, WEB서버는 HTML 문서같은 정적 컨텐츠를 처리하는 것이고 (HTTP 프로토콜을 통해 읽힐 수 있는 문서) , WAS서버는 asp, php, 15p 등 개발 언어를 읽고 처리하여 동적 컨텐츠, 웹 응용 프로그램 서비스를 처리하는 것이다.
- 차이점
- 목적이 다르다.
- 웹 서버는 정적인 데이터를 처리하는 서버이다. 이미지나 단순 html파일과 같은 리소스를 제공하는 서버를 웹 서버를 통하면 WAS를 이용하는 것보다 빠르고 안정적이다.
- WAS는 동적인 데이터를 처리하는 서버이다. DB와 연결되어 데이터를 주고 받거나 프로그램으로 데이터 조작이 필요한 경우에는 WAS를 활용 해야 한다.
- 우리가 만드는 웹페이지는 정적 컨텐츠와 동적 컨텐츠를 함께 노출하게 한다.
- WAS가 정적 데이터를 처리하게 되면, 동적 컨텐츠의 처리가 지연이 될 것이고 이로 인한 페이지 노출시간이 늘어나게 된다.
- WAS는 동적 처리에 최적화 되어 있는 서비스이기 때문에 처리 속도를 위해, 정적 처리는 웹서버에서 처리를 하고, 동적 컨텐츠는 WAS에서 처리하게 된다.
- 사용자가 클라이언트(브라우저)에 요청을 하게 되면 이를 웹서버에서 반응하여 WAS의 처리를 거쳐 웹 페이지로 다시 웹서버에서 클라이언트(브라우저)에 응답 메시지를 주는 것이다.
[참고 링크]
https://helloworld-88.tistory.com/71
[기본] WEB 과 WAS 차이
WEB, WAS 란? ■ 웹서버(WEB)란? 웹서버는 말그래도 작성된 html페이지 등을 네트워크망에 종속되지 않고, 웹서비스를 할 수 있도록 어플리케이션 - 웹 서버(소프트웨어): 웹 브라우저 클라이언트로부
helloworld-88.tistory.com
'woncoding > TIL' 카테고리의 다른 글
| TIL | 2.21.화 [SQL / ORM (2)] (0) | 2023.02.28 |
|---|---|
| TIL | 2.20.월 [SQL / ORM (1)] (0) | 2023.02.28 |
| TIL | 2.16.목 [Docker] (0) | 2023.02.18 |
| TIL | 2.15.수 [WSGI / ASGI] (0) | 2023.02.18 |
| TIL | 2.14.화 [Django ↔️ PostgreSQL] (0) | 2023.02.18 |