IT STUDY LOG
[WAS와 Web Server] 01. 서버 본문
# 학습 목표
- 서버의 종류와 역할에 대해서 이해합니다.
- 웹서버와 웹 애플리케이션 서버의 차이점을 이해합니다.
- 정적, 동적이라는 단어를 이해하고, 정적 웹 사이트와 동적 웹 사이트의 차이점을 학습합니다.
- nginx를 통해 정적 웹 사이트, 정적 콘텐츠를 이해합니다.
- nginx를 이용해 정적 웹사이트를 제공하고, Mini WAS를 개발하면서 위의 그림에서 2와 5번에 해당하는 구조를 이해합니다.
- express, fastify를 통해 API 서버를 만들면서 WAS의 구조와 해당 서버에 대한 모듈을 이해합니다.
웹 서버와 WAS의 전체적인 구조를 이해하고, 기본적인 CRUD가 있는 블로그 서버를 개발하며, 전체 아키텍처를 이해합니다.
# 학습 내용
1. 서버
- 서버
- 개요
- 컴퓨터의 역할을 의미
- 사용자의 요청을 받고, 이에 따른 응답과 데이터를 보내주는 역할을 수행함
- 서비스를 제공하는 컴퓨터 내의 프로그램을 의미하 프로그램(소프트웨어)이 실행되는 컴퓨터(하드웨어) 역시 서버라고 불림
- 구성
- 하드웨어 : 서버는 정적 파일들이 제공되거나, 서버 애플리케이션이 실행되는 컴퓨터
- 소프트웨어 : 정적 파일을 제공하거나, 서비스를 제공하는 애플리케이션 그 자체를 의미
- 종류
종류 설명 웹 서버(Web Server) - 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지(그림, CSS, JS와 같은 정적 파일)를 있는 그대로 반환하는 서버
- 정적 웹 서버(Static Web Server)라고 불리기도 함
- (예시) nginx, Apache Web Server웹 애플리케이션 서버
(Web Application Server)- 웹 페이지를 전달하는 역할도 하나 핵심 역할은 웹 페이지를 구성하는 동적인 컨텐츠를 생성하거나 업데이트 하는 비즈니스 로직을 수행
- 서버 측 비즈니스 로직에 클라이언트가 접근할 수 있는 방법을 제공하는 것입니다.
- 특징
① 웹 페이지를 구성하는 동적인 요소를 생성하는 서버 사이드 코드가 구동될 수 있는 프로그래밍 언어적 런타임 혹은 소프트웨어 엔진을 제공
② 웹 애플리케이션 서버를 사용할 경우 다양한 형태의 아키텍처가 생성될 수 있
- (예시) 웹 애플리케이션 서버데이터베이스 서버 - 사용자 정보나 사진, 동영상 등에 대한 정보를 담고 있는 데이터베이스에 사용자가 접근할 수 있도록 해주는 서버
- (예시) MySQL, MongoDB, Oracle 등프록시 서버 - 소스를 요청하는 클라이언트와 응답으로 리소스를 전달하는 서버 사이에 중계 역할을 하는 서버를 의미
- 보안, 캐시, 로드밸런싱
- 구분 : 포워드 프록시, 리버스 프록시
- 개요
2. 웹 서버 vs 웹 애플리케이션 서버
- 웹서버
- 정적 파일을 받고 이에 대한 요청을 이행하는 서버
- 보통 HTTP 요청과 응답만을 처리
- 웹 애플리케이션 서버(WAS)
- 데이터를 동적으로 처리해 제공하기 위해 만들어진 서버
- 데이터를 동적으로 처리하기 위해 DB 조회, 여러 개의 트랜잭션 간리, 비즈니스 로직 처리 등 기능이 요구
- 사용자 요청에 의해 다르게 보일 수 있는 웹 사이트 인터랙트 부분 처리
'devops bootcamp 4 > 개발 및 배포' 카테고리의 다른 글
[WAS와 Web Server] 03. nginx Web Server와 웹 호스팅 (1) | 2023.03.24 |
---|---|
[WAS와 Web Server] 02. 정적 웹사이트와 동적 웹사이트 (0) | 2023.03.24 |
[HTTP] 07. Google Spreadsheat & Sheety & Swagger 실습 (0) | 2023.03.23 |
[HTTP] 05. HTTPS (0) | 2023.03.23 |
[HTTP] 04. REST API 문서 작성 (0) | 2023.03.23 |
Comments