클라이언트 서버 아키텍처 ( 서버 / 클라이언트 / DB)

YS_Study.log·2022년 1월 11일
2

네트워크

목록 보기
2/3

클라이언트 서버 아키텍처(client server Architecture)

서버간의 통신을 서버와, 클라이언트로 분리시킨 설계방식으로, 이러한 설계방식을 2티어 아키텍처, 또는 클라이언트-서버 아키텍처라고 부른다.  
또한 이러한 2티어 아키텍처에 데이터베이스가 추가된 설계방식을 3티어 아키텍처라 부른다.

서버 / 클라이언트 / 데이터베이스 개념

  • 클라이언트(client) : 서버로 요청을 보내고, 요청한 내용 응답(리소스)를 받아 사용하는 역할.
    (웹/앱을 이용하는 사용자)
  • 서버(server) : 클라이언트의 요청에 따라 적절한 응답(리소스)전달해주는 곳
    필요에 따라 서버는 데이터베이스에 요청을 보내고, 회신 받은 응답(리소스)을 활용한다.
  • 데이터베이스 : 리소스를 저장하는 공간 (일종의 서버라고 볼 수 있음)
    서버의 요청을 따라 적절한 응답(리소스)을 꺼내 서버에게 전달한다.

2-Tier 아키텍처

클라이언트와 서버는 요청응답을 주고 받는 관계이며, 반드시 요청 후에 응답이 오며, 요청하지도 않았는데 응답이 오는 경우는 없다!

3-Tier 아키텍처

클라이언트와 서버 종류와 구분기준

클라이언트

  • 구분기준 : 플랫폼에 따라 구분한다.
  • 종류 : 브라우저 웹(Web) 플랫폼의 웹사이트(웹 앱), 스마트폰/태블릿 플랫폼, 그리고 데스크탑 플랫폼에서 이용하는 앱 등

서버

  • 구분기준 : 무엇을 하는가
  • 종류 : 파일 서버(파일을 제공하는 앱), 웹 서버(웹사이트에서 필요로 하는 정보들을 제공하는 앱), 메일 서버
    데이터 베이스(서버 데이터 제공자로서 일하므로 일종의 서버라고 볼 수 있다.)

클라이언트와 서버 간의 통신을 알아보려면, 보통 인터넷에 있는 데이터를 요청할 때에는 HTTP라는 프로토콜을 사용하며, 주소(URL, URI)를 통해 접근할 수 있게 됩니다. 우선 프로토콜이 무엇인지 HTTP는 무엇인지 알아보자!

참조 : 코드스테이츠

추가: 아키텍처 (Architecture)란 단어개념알기 [출처 블로그]
컴퓨터 시스템의 하드웨어 구조=아키텍처 : 컴퓨터 시스템을 구성하는 하드웨어 장치인 CPU 입출력 장치 등 컴퓨터 구성 요소들에 대한 전반적인 기계적 구조, 설계방법

profile
느리지만 조금씩 공부하는 중 입니다. 현재 1년 6개월차 신입입니다 ><!

0개의 댓글