gRPC(gRPC Remote Procedure Call)は、Googleが開発した高性能なRPCフレームワーク。Protocol BuffersでデータをシリアライズしHTTP/2を使用。低レイテンシ・高スループット・言語非依存が特徴。マイクロサービスアーキテクチャで広く採用されています。
RPC(Remote Procedure Call)は、ネットワーク上の別コンピュータのプログラムから関数を呼び出す技術の総称。XML-RPC、JSON-RPC、JavaRMIなど様々な実装形態があります。通常のローカル関数呼び出しと同じインターフェースで遠隔処理を実現する概念です。
RPCは遠隔関数呼び出しの概念全般を指すのに対し、gRPCはその具体的・現代的実装。使う場面として、gRPCはマイクロサービス間の高速通信に最適で、RPCは従来型の汎用遠隔通信に用いられます。ニュアンスでは、gRPCは技術仕様であり、RPCは設計パターン。対象として、gRPCは高性能が必須な大規模システム向け、RPCはシンプルな遠隔呼び出し向けです。
高性能・低遅延が必要でマイクロサービス環境ならgRPC。シンプルな遠隔呼び出しや既存システム連携ならRPC。対応言語・生態系・学習コストも考慮して選定してください。