cloud bee

web server와 was 본문

AWS/infra

web server와 was

who you 2023. 1. 25. 00:25

web server와 was가 어떠한 차이점이 존재하는지에 대해서 한 번 작성해 보도록 해 볼 것이다.


web server

web server

web server는 client가 요청한 정적 콘텐츠를 HTTP 프로토콜을 통하여 제공해 주는 서버이다.

-> 정적 콘텐츠는 was를 거치지 않고 클라이언트에게 바로 응답해 준다.

 

apache server 이미지이다.

그럼 동적인 자원들은?

-> 1. 클라이언트의 요청을 was로 전달해 주는 역할을 수행한다.

-> 2. was가 응답한 결과를 client에게 반환한다.

 

구분

web server는 소프트웨어랑 하드웨어 총 2가지로 구분할 수 있다.

- 소프트웨어: 클라이언트에게 정적인 콘텐츠( html, css )를 제공하는 프로그램이다.

- 하드웨어: web server가 설치가 된 컴퓨터이다.

 

web server kind

대표적으로 많이 사용하는 3가지만 넣어봤다.

- apache HTTP server: 아파치 소프트웨어 재단에서 관리하는 오픈소스 소프트웨어이다.

- NGINX: 트래픽이 많은 웹 사이트의 확장을 돕기 위해 개발된 경량화 웹 서버 프로그램이다.

- IIS WEB Server: Windows Server에서 구동되는 웹 서버이다, MIcrosoft에서 지원한다.


was

 

WAS ( Web Application Server )

was는 일종의 미들웨어로 web server를 통해 오게 되는 동적인 요청을 처리하는 서버이다.

was는 DB 조회 및 다양한 로직처리를 요구하는 동적인 콘텐츠를 제공해 준다.

tomcat 서버 이미지이다.

 

대표적으로 was는 tomcat이 존재한다.

- tomcat: 아파치 소프트웨어 재단의 web application server이다.


기능

 

web server와 was의 기능을 분리한 이유는 무엇일까?🤔

 

기능을 분리한 이유

1. was가 정적인 자원과 동적인 자원 모두 처리할 수 있다고 해도, 대량의 데이터를 처리하는 데에 한계가 있기 때문이다.

2. 요청 수가 많을 경우 was도 부하가 쉽게 걸릴 수 있기 때문이다.

-> 서버 부하 방지를 위해 web server와 was를 분리한다.

 

기능을 분리함으로 얻을 수 있는 것

1. 서버 부하 방지

2. 보안 강화

3. 여러 웹 서비스 운영

4. fail over, fail back 처리

Comments