はじめに 現在配属されているプロジェクトで、既存システムのマイクロサービス化対応を行っています。 その中でgRPCも使っているのですが、名前は聞いたことがあって、なんとなくは知っているけど、実際に触ったことがなかったので、これを機に基礎から学んでみようと思いました。 ということで、「完全に理解した」状態を一緒に目指しましょう! gRPCとは Googleが開発したRPC(Remote Procedure Call)1を実現するためのフレームワークです。 Protocol Buffersというバイナリ形式のシリアライズデータを利用し、データをシリアライズして高速な通信を実現します。 (Protocol Buffersがデファクトスタンダード) protoファイルと呼ばれるIDL(Interface Definition Language)にAPIの仕様を記述し、サーバサイドとクライアントサイ