본문 바로가기
컴퓨터 활용(한글, 오피스 등)/기타

HTTP, RESTful API, 그리고 gRPC

by 3604 2026. 5. 28.
728x90
HTTP, RESTful API, 그리고 gRPC는 모두 분산 시스템에서 클라이언트와 서버가 통신하기 위해 사용하는 기술이나 아키텍처입니다. 목적에 따라 서로 다른 장점과 사용처를 가집니다. [1, 2, 3, 4, 5]
🌐 주요 통신 기술 비교
구분 [1, 2, 3, 4, 5, 6, 7]RESTful APIgRPC
전송 프로토콜 주로 HTTP/1.1 사용 HTTP/2 기반
데이터 포맷 JSON, XML (텍스트 기반) Protobuf (Protocol Buffers) (바이너리 기반)
데이터 크기 페이로드(Payload)가 크고 헤더가 중복됨 바이너리 직렬화로 데이터 크기가 매우 작음
속도 및 성능 상대적으로 느림 직렬화/역직렬화 속도가 빠르고 네트워크 대역폭 효율적
스트리밍 비효율적 (추가 폴링이나 WebSocket 필요) 양방향 스트리밍 기본 지원
규격 정의 문서 기반 (OpenAPI 등) .proto 파일 기반의 엄격한 계약(Contract)
주요 사용처 브라우저/모바일 클라이언트와 서버 간의 통신 마이크로서비스(MSA) 간의 내부 통신 (Backend-to-Backend)
🔍 핵심 특징
  • RESTful API: HTTP 표준 메서드(GET, POST, PUT, DELETE)와 URL을 활용하는 아키텍처 스타일입니다. 인간이 읽을 수 있어 디버깅이 편하고 웹 브라우저 등에서 폭넓게 지원됩니다.
  • gRPC: 구글에서 개발한 고성능 RPC(원격 프로시저 호출) 프레임워크입니다. .proto 파일에 데이터를 정의하면 서버/클라이언트 코드를 자동 생성하여 휴먼 에러를 줄이고 성능을 극대화합니다. [1, 2, 3, 4, 5, 6, 7]
⚙️ 실무에서의 활용 (보통의 경우)
일반적으로 웹/모바일 프론트엔드와 백엔드 간에는 범용성이 높은 REST API를 사용하고, 속도와 안정성이 중요한 백엔드 마이크로서비스 간(MSA) 통신에는 gRPC를 사용하는 하이브리드 형태를 많이 채택합니다. [1, 2]
728x90