○ 서버 > 어떤 컴퓨터의 역할
> 어떤 컴퓨터 한 대가 요청을 이해하고, 이를 처리하여 요청에 맞는 내용을 응답으로 전달 - serve+er
★ 서버의 역할
- 사용자의 요청을 받고, 이에 따른 응답과 데이터를 보내주는 역할을 수행함
- 서비스를 제공하는 컴퓨터 내의 프로그램을 의미함
- 이러한 프로그램(소프트웨어)이 실행되는 컴퓨터(하드웨어) 역시 서버라고 불림
★ 서버의 종류
웹 서버
: 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지를 있는 그대로 반환하는 서버
: 그림, CSS, JS을 포함 > 정적 파일
: 예시 - nginx, Apache Web Server 등
웹 애플리케이션 서버(WAS)
: 웹 서버와 같이 웹 페이지를 전달하는 역할을 하기도 함
: 그러나 WAS의 핵심 역할은 웹 페이지를 구성하는 동적인 컨텐츠를 생성하거나 업데이트 하는 비즈니스 로직을 수행
: 비즈니스 로직에 클라이언트가 접근할 수 있는 방법을 제공
: 웹 페이지를 구성하는 동적인 요소를 생성하는 서버 사이드 코드가 구동될 수 있는 프로그래밍 언어적 런타임 혹은 소프트웨어 엔진을 제공
: 클라이언트는 애플리케이션 그 자체가 될 수도 있고, 웹 서버나 다른 웹 애플리케이션 서버, 데이터베이스 서버가 될 수도 있음.
: 다양한 형태의 아키텍처가 생성
데이터베이스 서버
: 사용자가 데이터베이스에 연결할 수 있도록 해줌
: 사용자 정보나 사진, 동영상 등에 대한 정보를 담고 있는 서버
: 데이터베이스 서버의 종류로는 MySQL, MongoDB, Oracle 등 여러 종류러 나뉨
프록시 서버
: 리소스를 요청하는 클라이언트와 응답으로 리소스를 전달하는 서버 사이에 중계 역할을 하는 서버를 의미
: 어디에 위치하느냐에 따라 포워드 프록시와 리버스 프록시로 나뉨
: 기능으로는 보안, 캐시, 로드밸런싱 등
'DevOps BootCamp > 서버' 카테고리의 다른 글
WAS 개발 (0) | 2023.03.28 |
---|---|
CORS 개념 (0) | 2023.03.27 |
nginx Web Server, 호스팅 (0) | 2023.03.24 |
빌드와 언어별 빌드 도구 (0) | 2023.03.24 |
정적 웹사이트 vs 동적 웹사이트 (0) | 2023.03.24 |