서버: 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 장치
클라이언트: 네트워크를 통해 서버에 접속하여 정보를 확인하거나 서비스를 이용하는 장치
웹 애플리케이션을 구성하는 서버 종류
✅1.웹 서버: 정적 콘텐츠(소스코드, 텍스트, 이미지 등)을 클라이언트에 전달
✅2.애플리케이션 서버: 동적 콘텐츠(소스코드, 텍스트, 이미지 등)을 클라이언트에 전달
-> 웹서버를 거쳐서 요청 내용을 확인하고 응답함
✅3.데이터베이스 서버: 애플리케이션의 정보를 저장해서 운영, 관리할 수 있는 데이터베이스를 구동하는 서버
✅4.리버스 프록시 서버: 클라이언트와 서버가 서로 데이터를 주고받을 수 있도록 전달
-> 웹서버에서 전달받은 요청을 잡아둔 후, 뒤의 애플리케이션 서버를 확인하고 한가하거나 일을 끝낸 애플리케이션에 요청을 전달함.
-> 즉, 분산해서 요청받을 수 있도록 컨트롤
✅5.포워드 프록시(캐시) 서버: 미리 데이터를 저장해 뒀다가 요청이 오면 데이터 전달
-> 반복적인 요청이 들어왔을 때 빠르게 처리해줄 수 있도록 하는 서버
-> 부하를 줄여줌
-> 캐시 서버는 순서대로 요청한 데이터를 응답해주고 그 기록을 저장해둠. 또 요청이 들어오면 다시 처음의 프로세스를 거치지 않고 캐시 서버에 저장해뒀던 그 기록으로 응답함. 따라서 다시 DB서버까지 도달하지 않아도 되므로 효율적
서버의 역할 : 클라이언트의 요청을 수행하기 위해 다양한 서버들끼리 통신한 후 결과를 클라이언트에 전달
cf) 서버는 보통 24시간 운영됨. 다운시키면 서비스가 중단되기 때문
이때, 핫 스왑(핫 = 온라인 상태)은 작동중인 시스템을 끄지 않고 문제가 있는 장치를 교체할 수 있는 기능이다.