인터넷의 구성 요소 인터넷은 전 세계적으로 수십억 개의 컴퓨팅 장치를 연결하는 컴퓨터 네트워크다. 모든 장치는 인터넷 용어로 호스트(host) 혹은 종단 시스템(end system)이라고 부른다.
네트워크 프로토콜의 설계 구조를 제공하기 위해, 네트워크 설계자는 프로토콜(프로토콜을 구현하는 네트워크 하드웨어와 소프트웨어)을 계층(layer)으로 조직한다. Application, Transport, Network, Link
TCP/UDP 인터넷(그리고 일반적인 TCP/IP 네트워크)은 애플리케이션에게 2개의 전송(transport) 프로토콜, 즉 UDP(User Datagram Protocol)와 TCP(Transmission Control Protocol)를 제공한다.
Overview of HTTP Evolution of HTTP
HTTP 서버는 상태를 유지하지 않는다. 그러나 서버가 사용자 접속을 제한하거나 사용자에 따라 콘텐츠를 제공하기 위해 웹사이트가 사용자를 확인하는 것이 바람직할 때가 있다. 이 목적으로 HTTP는 쿠키 또는 세션을 사용한다.
프록시 서버란 인터넷 상의 여러 네트워크들에 접속할 때 중계 역할을 해주는 프로그램 또는 컴퓨터를 의미한다. 프록시는 요청을 가로챈 뒤 응답을 되돌려준다. 이렇게 가로챈 요청을 전달하거나, 하지 않거나(e.g. 캐시), 수정할 수도 있다(e.g. HTTP 헤더 수정).
로드 밸런싱은 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법이다. 로드 밸런서는 사용자와 서버 그룹 사이에 위치하며 보이지 않는 촉진자 역할을 하여 모든 리소스 서버가 동일하게 사용되도록 하는 디바이스다.
REST(REpresentational State Transfer) API는 두 컴퓨터 시스템이 인터넷을 통해 데이터를 교환하기 위해 사용하는 인터페이스다. REST 등장 배경, REST 제약 조건, REST API 설계 원칙에 대해 알아본다.