HTTP

    [gRPC] gRPC 개념, RPC, IDL비교(XML, JSON, Protocol Buffer)

    [gRPC] gRPC 개념, RPC, IDL비교(XML, JSON, Protocol Buffer)

    gRPC란? 구글이 개발한 오픈 소스 원격 프로시저 호출 시스템(RPC)이다. 호출을 위해 TCP/IP 프로토콜과 HTTP2.0 프로토콜을 사용하고 IDL(Interface Definication Language)로 protocol buffer를 사용한다. RPC(Remote Procedure call)란? 한 프로그램이 네트워크의 세부 정보를 이해하지 않고도 네트워크 안의 다른 컴퓨터에 있는 프로그램에서 서비스를 요청하는 프로토콜 HTTP 2.0 HTTP(Hypertext Transfer Protocol)는 웹 환경에서 사용되는 통신 프로토콜로 OSI 7 Layer에서 최상위인 Application Layer에서 사용한다. 더보기 HTTP에 대한 역사 [Network] HTTP(Stateful Stat..

    [Network] HTTP 상태코드

    [Network] HTTP 상태코드

    상태코드 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx(Informational): 요청이 수신되어 처리 중을 의미한다. 2xx(Successful): 요청 정상 처리한다. 3xx(Refirection): 요청을 완료하려면 추가 행동이 필요하다. 4xx(Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없다. 5xx(Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못한다. 미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 된다. 299 -> 2xx(Successful) 451 -> 4xx(Client Error) 599 -> 5xx(Server Error) 2xx(Sucessful) - 클라이언트의 요청을 성공..

    [Network] HTTP 메서드 활용

    [Network] HTTP 메서드 활용

    클라이언트에서 서버로 데이터 전송 데이터 전달 방식은 크게 2가지이다. 1. 쿼리 파라미터를 통한 데이터 전송 GET, 정렬 필터로 주로 검색어에 사용된다. 2. 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 4가지 상황 1. 정적 데이터 조회 이미지, 정적 텍스트 문서 2. 동적 데이터 조회 주로 검색, 게시판 목록에서 정렬 필터로 쓰인다. 3. HTML FORM을 통한 데이터 전송 회원 가입, 상품 주문, 데이터 변경에 쓰인다. 4. HTTP API를 통한 데이터 전송 회원가입, 상품 주문, 데이터 변경 서버 to 서버, 앱 클라이언트, 웹 클라이언트(Ajax) 정적 데이터 조회의 경우(쿼리 파라미터 미사용) 이미지, 정적 텍스트 문..

    [Network] HTTP(Stateful Stateless 차이, 비 연결성, 클라이언트 서버 구조 ...)

    [Network] HTTP(Stateful Stateless 차이, 비 연결성, 클라이언트 서버 구조 ...)

    HTTP (HyperText Transfer Protocol) - 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 RFC2068 (1997) -> RFC2616 (1999) -> RFC7230~7235 (2014) HTTP/2 2015년: 성능 개선 HTTP/3 진행중: TCP 대신에 UDP 사용, 성능 개선 - 기반 프로토콜 TCP: HTTP/1.1, HTTP/2 UDP: HTTP/3 현재 HTTP/1.1 주로 사용 - HTTP/2, HTTP/3 도 점점 증가 - HTTP 특징 클라이언트 서버 구조를 갖는다. 무상태(Stateless) 프로토콜, 비연결성 -..