gRPC یک فریمورک متنباز برای ارتباط سریع و کارآمد بین سرویسهاست که معمولاً در معماریهای Microservice استفاده میشود. این فناوری به جای JSON از Protocol Buffers (Protobuf) برای سریالسازی دادهها بهره میبرد؛ فرمتی باینری، کمحجم و بسیار سریع که علاوه بر کاهش حجم دادههای ارسالی، قرارداد (Contract) مشخصی بین کلاینت و سرور ایجاد میکند.
به بیان ساده، Protobuf زبان تعریف ساختار پیامهاست و gRPC از همین تعریفها برای تولید خودکار کدهای کلاینت و سرور و برقراری ارتباط RPC روی HTTP/2 استفاده میکند. در واقع، Protobuf مشخص میکند «چه دادهای» رد و بدل شود و gRPC مسئول «نحوه برقراری ارتباط» و فراخوانی متدهای راه دور بر اساس همان قرارداد است.