2023/09/10 定例会没
#定例会案
2023/09/10
今回はgRPCを触ります。
gRPCとは
gRPCは、Googleが開発したRPCのフレームワーク。
RPC
遠隔で特定の処理を呼び出すための仕組み。
例えば、以下のような仕組みを実現できる
クライアントが、サーバーの持つ特定の機能をネットワーク経由で呼び出す
異なるサーバーで動くサービス間で、所定の機能を呼び出す
流れ
1. 共通のインターフェースを定義
2. インターフェースを元に、クライアントやサーバーを実装していく
共通のインターフェースを使うから、遠隔で呼び出せるということ
インターフェース定義
gRPCでは、Protocol Buffersを使ってインターフェースを定義する。
GoogleがgRPC以前に定義した軽量なデータ規格
実際に使ってみよう
今回は、前半ではNode.jsを使用して実験します。
後半では、Node.jsとPythonを使用して、言語に依らない共通のインターフェースを使う意義を確認します。
前提
Node.js v8.13.0以上
Python3.7以上
バージョンについて細かいことは検証していないので、できれば最新のlatest / stableを使ってください
Node.js
https://grpc.io/docs/languages/node/quickstart/
Python
https://grpc.io/docs/languages/python/quickstart/
/icons/hr.icon
感想
Wiresharkでlocalhost間の通信を見ると、通信の実態を見られて良さそう。