위키득계정 ↗
기술

gRPC

gRPC기술
기본 정의 방식
프로토콜 버퍼
단일 호출
요청 하나와 응답 하나
스트리밍 방식
서버와 클라이언트 및 양방향
코드 구성
클라이언트와 서버 코드 생성
gRPC는 서비스의 메서드와 입출력 메시지를 정의해 원격으로 호출하는 통신 체계다. 기본적으로 프로토콜 버퍼를 사용하며 단일 응답과 여러 형태의 스트리밍 호출을 지원한다.

정의에서 원격 호출로

서비스 정의는 호출할 메서드와 매개변수 및 반환 자료형을 지정한다. 생성된 클라이언트 코드는 메시지를 서버에 전달하고, 서버는 정의된 메서드를 구현해 요청을 처리한다.

단일 메시지와 스트림

서버 스트리밍은 요청 하나에 여러 응답을 보내고, 클라이언트 스트리밍은 여러 요청 뒤에 응답을 받는다. 양방향 스트리밍에서는 양쪽이 독립적으로 메시지를 보내며 각 스트림 내부의 순서는 유지된다.

호출의 종료와 상태

클라이언트는 호출의 완료를 기다릴 기한을 지정할 수 있다. 서버가 작업을 마쳤더라도 응답이 기한 뒤 도착하면 클라이언트의 성공 판단과 다를 수 있으므로 호출 상태와 응용의 처리 결과는 구분된다.

관련 문서

프로토콜 버퍼 / Apache Thrift / Capn Proto / JSON-RPC / 네트워크 / 프로그래밍 언어