gRPC 공식문서
https://grpc.io/docs/
🌠gRPC 탄생배경
REST API 의 단점을 극복하기 위해 탄생했다.
기존의 REST API의 단점
간단하고 범용적인 통신 방식이지만
- 서비스 간 통신에서 네트워크 오버헤드와 성능저하 문제
- JSON 형식을 사용하므로 데이터 크기가 크고, 파싱에 오버헤드가 발생
- 텍스트 기반의 JSON 형식 사용
- 커지는 데이터의 크기
- 직렬화 및 역직렬화 과정의 추가적인 비용 발생
- 응답 시간 문제 :
- HTTP/1.1기반의 REST는 각 요청마다 새로운 연결을 생성해야 하므로 네트워크 지연 발생
그래서 Google은 gRPC를 개발하여
HTTP/2의 멀티플랙싱 기능을 통해 네트워크 지연을 최소화하고,
Protobuf를 사용해 전송 데이터의 크기를 줄였다.
🌌 gRPC의 특징