一覧に戻る
Lv.3

gRPC

gRPC Remote Procedure Calls

異なるコンピューター間でプログラムを素早く呼び出して動かすための仕組み。

簡単に説明すると

gRPCは、ネットワークでつながった別のコンピューターにあるプログラムを、まるで自分の手元にあるかのように直接動かせる仕組みのことだよ。 データの送り方や受け取り方をあらかじめルール化して、スムーズにやり取りできる特徴があるんだ。 主に、複数のサーバーが連携して動くシステムや、スマートフォンのアプリとサーバーをつなぐ通信などで利用されているよ。

名前のヒミツ

gRPC(ジーアールピーシー)の「g」は、開発元がGoogleだからGoogleの略だと思われがちだけど、実は公式にはリリース(バージョン)ごとに「good」や「green」など異なる意味の単語を割り当てる遊び心があるんだ。 「RPC」は「Remote Procedure Call」の略で、日本語では「遠隔手続き呼び出し」と呼ばれるよ。

くわしく見てみよう!

gRPCとは、離れた場所にあるコンピューター同士がデータをやり取りして、お互いのプログラムを実行し合うための仕組みのことだよ。これを使うと、開発者はネットワークの複雑な通信手順を細かく意識しなくて済むんだ。
自分のパソコンの中にあるプログラムを動かすのと同じような感覚で、別のサーバーの機能を呼び出せるんだよ。

gRPCでは、あらかじめデータの形や通信のルールを専用のファイルに書き込んでおくんだよ。このファイルをもとに、自動的に通信用のプログラムが作られるため、開発の手間を減らせるんだ。
また、データをテキストではなくコンピューターが理解しやすい軽量な「バイナリ形式」に変換してやり取りすることや、複数の通信を同時に並行して処理できる仕組みを採用しているため、効率的な通信を可能にする特徴があるよ。

この仕組みは、複数の小さなプログラムを組み合わせて1つの大きなシステムを作る「マイクロサービス」と呼ばれる開発手法で導入されることがあるんだ。それぞれのプログラムが独立しているため、システムの修正や追加が簡単になる特徴があるよ。
特に、スマートフォンのアプリとサーバーの間の通信など、データの軽量さや処理速度が求められる場面で活用されているんだ。