🔎 HTTP를 이용한 클라이언트, 서버 아키텍처를 이해하고 브라우저의 작동원리를 이해하기 위한 네트워크 기초 지식을 학습했다. 처음 접하는 용어들이 많아 다시 정리하며 복습하고자 한다.
➡️ 쇼핑몰의 상품 정보와 같은
'리소스가 존재하는 곳'과 '리소스를 사용하는 앱'을 분리시킨 것을
2티어 아키텍쳐
또는클라이언트-서버아키텍처
라고 부른다.
➡️ 이 때 리소스를 사용하는 앱이'클라이언트'
,
리소스를 제공하는 곳을'서버'
라고 부른다.
➡️ 서버는 리소스를 전달해주는 역할만 하기에,
리소스를 저장하는 공간을 별도로 마련하는데
이 공간이 '데이터 베이스'이다.
데이터 베이스는 창고와 같은 역할을 하며
데이터 베이스가 추가된 형태를3티어 아키텍처
라고 부른다.
➡️ 클라이언트는 플랫폼에 따라 구분된다.
클라이언트
: 웹사이트(웹 앱), 스마트폰/태블릿용 앱, 데스트탑 앱
서버
: 웹 서버, 파일 서버, 메일 서버, 데이터베이스 서버
➡️ 웹 애플리케이션 아키텍쳐에서는
클라이언트와 서버가 서로
HTTP라는 프로토콜을 이용해서 대화를 나눈다
➡️ 각자의 프로토콜마다 지켜야하는 규약이 존재한다.
OSI 7 Layers는 해당 프로토콜이 어떤 계층에 속해있는지를 표시
네트워크 기초 지식은 면접에서 요구하는 경우가 있다는 점
➡️
API
는 Application Programming Interface의 약자로
메뉴판과 같은 역할을 한다고 볼 수 있다
Interface
는 의사소통이 가능하도록 만들어진 접점
서버는 리소스 전달을 위한 메뉴판, 즉API 문서
를 작성해야 클라이언트가 활용이 가능하다. 보통 인터넷에 있는 데이터를 요청할 때에는HTTP 프로토콜
을 사용하고주소(URL,URI)
로 접근할 수 있다.
➡️ HTTP 요청에는 메서드가 존재하고,
HTTP 메소드는 CRUD 행동에 따라 목적에 맞게 써야 한다
➡️ 기억해야 할 다섯 가지 메서드
: GET(조회), POST(추가), PUT(또는 PATCH)(갱신), DELETE(삭제)