📌 클라이언트 서버 아키텍처 (2-Tiar 아키텍처)
: 리소스가 존재하는 곳과 리소스를 사용하는 앱을 분리시킨 것
클라이언트 : 리소스 사용하는 앱
서버 : 리소스 제공(serve)하는 곳
데이터베이스 : 리소스 저장하는 공간 (2-Tiar 아키텍처 + 데이터베이스 === 3-Tiar 아키텍처)
📌 프로토콜
: 서버와 클라이언트 사이의 통신 규약
OSI 7 Layers에 속한 다양한 프로토콜들이 있음
✔ API (Aplication Programming Interface)
: 서버가 제공하는 인터페이스
Interface : 의사소통이 가능하도록 만들어진 접점
HTTP API 디자인의 Best Practice
HTTP 요청에는 메서드 개념 존재
요청 | URL 디자인 | 사용하는 메소드 |
모든 사용자 조회 | /users | GET |
새 사용자 추가 | /users | POST |
1번 사용자 정보 갱신 | /users/1 | PUT |
1번 사용자 정보 삭제 | /users/1 | DELETE |
1번 사용자 정보 조회 | /users/1 | GET |
📌 URL & URI
✔ URL (Uniform Resourde Locater)
: 네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이 위치한 정보를 나타냄
명칭 | 설명 | 예시 |
scheme | 통신 방식(프로토콜) | file:// , http://, https:// |
hosts | 웹 서버의 이름, 도메인, IP를 사용하여 나타낸 주소 | 127.0.0.1, www.google.com |
url-path | 웹 서버에서 지정한 루트 디렉토리부터 시작한 소스의 경로, 파일명 | /search, /Users/username/Desktop |
✔ URI (Uniform Recourse Identifier)
: URL을 포함하는 상위개념
명칭 | 설명 | 예시 |
query | 웹 서버에 전달하는 추가 질문 | q=JavaScript |
fragment | 북마크 기능 수행, URL에 fragment(#)와 특정 HTML 요소의 id 전달 시해당 요소가 있는 곳으로 스크롤 이동 | |
port | 웹 서버에 접속하기 위한 통로 | :80, :443, :3000 |
📌 IP & Port
✔ IP (Internet Protocol)
: 인터넷 상의 주소체계
IPv4 (Internet Protocol version 4)
1. 네 덩이의 숫자로 구분
2. 각 덩어리에 0 ~ 255까지 나타냄 (2^(32) : 약 43억 개의 IP주소)
IPv6
: 개인 PC의 증가로 IPv4로 할당할 수 있는 PC가 한계를 넘어서서 만들어짐
표기법을 달리 책정하여 2^(128)개의 주소 표현 가능
localhost, 127.0.0.1 : 현재 사용 중인 로컬 PC
0.0.0.0, 255.255.255.255 : broadcast address, 로컬 네트워크와 접속된 모든 장치와 소통하는 주소. 서버에서 접근 가능 IP주소를 broadcast address로 지정하면 모든 기기에서 서버에 접근할 수 있다.
✔ PORT
: 웹 서버에 접속하기 위한 통로(채널)
포트 번호 : 0 ~ 65535 까지 사용 가능, 0 ~ 1024번은 주요 통신을 위한 규약에 따라 이미 정해져 있음
22 : SSH
80 : HTTP
443 :HTTPS
HTTP, HTTPS는 URI에서 생략가능
📌 Domain name
: 웹 브라우저를 통해 특정 사이트에 진입할 때 IP 주소를 대신하여 사용하는 주소
IP를 간결하게 표현 (예: 도로명주소 = IP, 상호명 = 도메인 네임)
nslookup
: 터미널에서 도메인 이름으로 IP주소 확인
✔ DNS (Domain Name System)
: IP주소와 도메인 이름 변환, 반대의 경우도 수행
'Codestates SEB FE 42기 > 정리노트' 카테고리의 다른 글
S2 unit7 | [HTTP/네트워크] AJAX , SSR vs CSR (1) | 2022.12.03 |
---|---|
S2 unit7 | [HTTP/네트워크] 크롬 브라우저 에러 의미 (0) | 2022.12.02 |
S2 unit6 | [React] Props & State 상태와 속성으로 이벤트 처리하기 (0) | 2022.12.01 |
S2 unit5 | React SPA (react-route-dom) (0) | 2022.11.29 |
S2 unit4 | React 기초 (0) | 2022.11.27 |