Keep going
웹 서버와 웹 어플리케이션 서버(WAS) 본문
정적인 페이지
- 동일한 요청에 대해서 동일한 내용의 페이지를 반환한다.
동적 페이지
- 동일한 요청이더라도 누가/언제 요청했는지에 따라 내용이 변하는 페이지이다.
ex) 쇼핑몰 사이트의 장바구니 페이지 등
◈ 웹 서버
HTTP 요청에 따라 서버에 저장되어 있는 적절한 웹페이지를 클라이언트에게 전달하는 것이다.
웹 서버는 요청에 따라 정적인 컨텐츠(html, javaScript, css등) 를 제공하지만 동적인 켄텐츠는 제공해주지 못한다.
웹 서버는 동적인 컨텐츠 제공을 위한 요청을 WAS로 보내고, WAS가 처리한 결과를 클라이언트에게 전달 한다.
◈ 웹 애플리케이션 서버
웹 서버와 웹 컨테이너가 합쳐진 형태이다.
인터넷 상에서 HTTP를 통해 어플리케이션을 수행해 주는 미들웨어(소프트웨어 엔진)이다.
동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며 주로 데이터베이스 서버와 같이 수행이 된다.
대부분의 WAS는 정적인 컨텐츠를 제공해주고 있기 때문에, 웹 서버 없이 WAS만 존재할 수 있다.
그래서 WAS는 웹 서버를 포함하는 개념이라고 생각해도 될 것이다.
◈ 웹 서버를 왜 사용하는가?
1. WAS가 해야 할 일의 부담을 줄이기 위해서.
WAS 앞에 웹 서버를 둬서 웹 서버에서는 정적인 문서만 처리하도록 하고, WAS는 애플리케이션의 로직만 수행하도록 기능을 분배하여 서버의 부담을 줄이기 위한 것이다.
2. WAS의 환경설정 파일을 외부에 노출시키지 않도록 하기 위해서.
클라이언트와 연결하는 포트가 직접 WAS에 연결이 되어 있다면 중요한 설정 파일들이 노출될 수 있기 때문에 WAS 설정 파일을 외부에 노출시키지 않도록 하기 위해서 웹 서버를 앞단에 배치시킨다.
웹 서버와 WAS에 접근하는 포트가 다르기 때문에, WAS에 들어오는 포트에는 방화벽을 쳐서 보안을 강화할 수도 있다.
'Web Project > 웹 프로그래밍 기초' 카테고리의 다른 글
HTTP / 브라우저 (0) | 2021.01.13 |
---|