1. 웹 서버
웹
- 인터넷 망 안에서 정보를 공유, 검색할 수 있게 하는 시스템.
- 인터넷 서비스 종류로 웹, SMTP, FTP ,Telnet 등이 있다.
- 웹을 구성하는 세가지 기술은 HTTP, URL/URL, HTML이 있다.
서버
- 네트워크를 통해 클라이언트에게 정보나 서비스를 제공하는 컴퓨터 시스템
웹서버란?
- 웹 브라우저 클라이언트로부터 HTTP 요청을 받아들이고 HTML 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램
- 정적인 페이지를 제공하는 서버로 HTML,JPG, GIF 같은 정적 파일을 HTTP를 통해 웹 브라우저로 제공
- 사용자(클라이언트)가 요청을 보내면 그에 대한 처리를 실행하고 응답을 보내주는 역할
- 정적인 데이터를 처리하며 동적인 데이터를 요청하면 결국 비즈니즈 로직 처리나 DB연동 문제를 해결하기 위해 WAS 서버로 데이터를 넘겨 처리해야한다.
- 종류 : Apache, tMax, nignx 등
WAS란
- 인터넷 상에서 HTTP 프로토콜을 통해 사용자 컴퓨터나 장치에 애플리케이션을 수행해주는 미들웨어로서, 주로 동적 서버 컨텐츠를 수행하는 것으로 웹 서버와 구별이되며, 주로 DB서버와 같이 수행된다.
- 동적 페이지(jsp, php, asp) 등을 표현하기 위한 서버
- Server 단에서 애플리케이션을 동작할 수 있도록 지원한다.
- 웹서버의 부하를 분산하기 위해 만들어진 서버이며, 웹서버와 애플리케이션 서버를 동시에 수행할 수 있는 서버
- 종류 : Tomcat, BEA Web, Web Logic, Tmax Jeus 등
Web Service Architecture
웹 애플리케이션은 요청 처리 방식에 따라 여러 구조를 가진다.
ex)
- client -> Web server -> DB
- client -> WAS -> DB
- client -> Web server -> WAS -> DB
프로젝트에서 WAS와 Web Server를 나누어 사용하는 이유
-
서로의 기능을 분리하여 서버 부하를 방지한다.
- WebServer를 통해 정적 컨텐츠는 빠르게 받고 WAS는 DB 조회 등의 다양한 로직을 따로 처리하도록 기능을 분리
- WebServer를 WAS 앞에 두고 필요한 WAS를 WebServer에 플러그인 형태로 설정하면 더욱 효율적으로 분산 처리가 가능하다.
-
물리적으로 보안을 강화할 수 있다.
- SSL에 대한 암복호화 처리에 WebServer를 사용
- WebServer를 앞단에 배치하여 DB나 로직까지 들어오지 못하게 할 수 있다.
-
여러 대의 WAS를 연결할 수 있다.
- Load Balancing에 이점이 있다.
- fail over(작동 중지된 WAS를 대신해 다른 WAS를 사용) / fail back(작동 중지된 WAS를 재동작) 을 사용하여 무중단 운영을 가능하게 해준다.
-
다른 종류의 WAS 서비스 가능
- 하나의 서버에서 PHP Application과 Java Application을 함께 사용할 수 있다.
참고 사이트
Web-웹-서버와-WAS
Web Server vs WAS
웹서버와 WAS 차이