
코드스테이즈 41기 교육 내용을 정리하고 있습니다.
틀린 부분이 있으면 댓글로 알려주시면 감사하겠습니다.
🐿클라이언트 - 서버 아키텍쳐
리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시키는 것을 2티어 아키텍처 또는 클라이언트 - 서버 아키텍처라고 부른다
리소스는 사용될수 있는 어떤 항목을 말한다. 프린터나 디스크 드라이브와 같은 장치들이 리소스가 될 수 있으며, 메모리도 가능하다
윈도우와 같은 운영체제에서는 프로그램들이 활용할 수 있는 데이터나 루틴들을 가르킨다
리소스를 사용하는 앱을 클라이언트, 리소스를 제공하는 곳을 서버라고 한다.
클라이언트와 서버는 요청과 응답을 주고받는 관계이다.
클라이언트 - 서버 아키텍처에서는 요청이 선행되고 그 후에 응답이 온다.
일반적으로 서버는 리소스를 전달해 주는 역할만 담당한다. 리소스를 저장하는 공간을 별도로 마련해 두는데 이 공간을 데이터 베이스라 한다.
2티어 아키텍처에 데이터베이스가 추가된 형태를 3티어 아키텍처라 부른다.
클라이언트는 플랫폼에 따라 구분이 된다. 브라우저를 통해 주로 이용하는 웹 플랫폼에서의 클라이언트는 웹사이트 또는 웹 앱이라고 부릅니다.
iOS나 안드로이드와 같은 스마트폰/태블릿 플랫폼, 그리고 윈도우와 같은 데스크탑 플랫폼에서 이용하는 앱 역시 클라이언트가 될 수 있다
클라이언트는 서버로 요청을 보내고, 서버는 요청에 따라 적절한 응답을 클라이언트로 회신한다.
필요에 따라 서버는 데이터베이스에 요청을 보내고, 회신 받은 응답을 활용한다.
🐿클라이언트 - 서버 통신과 API
프로토콜은 통신 규약으로 클라이언트와 서버간의 통신을 위한 하나의 약속입니다.
웹 애플리케이션 아키텍처에서는 클라이언트와 서버가 서로 HTTP라는 프로토콜을 이용해서 서로 대화를 나눕니다.
이처럼 각 영역에서 프로토콜마다 지켜야하는 규약이 있습니다.
API는 Application Programming interface의 약자로 의사소통이 가능하도록 만들어진접점이라는 뜻이다.
서버는 클라이언트에게 리소스를 잘 활용할 수 있도록 인터페이스를 제공해야 한다.
이것을 API라고 한다.
'프론트엔드 > Codestates' 카테고리의 다른 글
| [HTTP/네트워크] HTTP (0) | 2022.10.06 |
|---|---|
| [HTTP/네트워크] 브라우저의 작동원리 (0) | 2022.10.05 |
| [React] Props & React State (0) | 2022.10.04 |
| [React] React SPA/ React Router (0) | 2022.10.04 |
| [React] JSX/ map을 이용한 반복/ Component (0) | 2022.10.04 |