우아한 테크톡 관련된 유튜브 강의 정리 내용입니다.
정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다.
웹 서버(Web Server)
클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠를 제공하는 서버
Web
- 인터넷을 기반으로 한, 정보를 공유, 검색할 수 있게 하는 서비스
- URL(주소), HTTP(통신 규칙), HTML(내용)
Server
- 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템
Web Server
- 인터넷을 기반으로 클라이언트에게 웹 서비스를 제공하는 컴퓨터
웹서버에게 주소를 가지고 통신규칙에 맞게 요청하면 알맞은 내용을 응답 받습니다
클라이언트의 요청을 기다리고, 웹 요청에 대한 데이터를 만들어서 응답을 해줍니다.
이때 데이터는 웹에서 처리할 수 있는 html, css, 이미지 등 정적인 데이터로 한정이 되어 있습니다.
WAS (Web Application Server) 웹 어플리케이션 서버
다양한 서버 내 알고리즘, 비지니스 로직, DB 조회 등 클라이언트 요청에 따라 동적인 컨텐츠를 제공하는 서버, 프로그램입니다.
Web Application
- 웹에서 실행되는 응용 프로그램
Web Application Server
- 웹 어플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크입니다.
- 웹 어플리케이션을 실행시켜 필요한 기능을 수행하고 그 결과를 웹서버에 전달합니다.
- php, jsp, asp와 같은 언어들을 사용해 동적인 페이지를 생성할 수 있는 서버입니다.
- 프로그램 실행 환경과 데이터베이스 접속 기능을 제공합니다.
- 비지니스 로직 수행 가능
- 웹 서버 + 웹 컨테이너
- 컨테이너 : jsp, servlet을 실행시킬 수 있는 소프트웨어
- 자바 계열에선 웹 어플리케이션 컨테이너라고 부름
- 웹 어플리케이션 컨테이너 : 웹 어플리케이션에 배포되는 공간
Web Server 과 WAS의 제품군
WAS와 Web Server을 분리해서 사용하는 이유
- 기능을 분리하여 서버의 부하를 방지합니다
- 물리적으로 분리하여 보안을 강화시킵니다.
- 여러 대의 WAS를 연결해 로드 밸런싱 용도로 사용할 수 있습니다.
- 여러 언어의 웹 어플리케이션 서비스가 가능합니다.
즉, 자원 이용의 효율성 및 장애 극복, 베포 및 유지보수의 편의성을 위해 따로 사용합니다.
'Computer Science > 테크톡 정리' 카테고리의 다른 글
[CS 정리]캐시 정리 (0) | 2021.08.21 |
---|---|
[CS 정리]빌드 용어 정리 (0) | 2021.08.21 |
[CS 정리]프로세스 ( Process ) vs 쓰레드 ( Thread ) (0) | 2021.08.20 |
네트워크 프록시(Proxy) & 로드 밸런서(Load Balancer) (0) | 2021.08.19 |
[Spring] Spring Aop 란? (0) | 2021.08.15 |