gRPCとは gRPCの概要については、こちらのエントリで記載しています。 このエントリでは、gRPCの運用で気になるポイントや、Javaで実装する場合を中心にまとめていこうと思います。 開発フロー 現代的なシステムではシステム間をAPIを通じて通信することが多くなってきています。 この場合、各システムのインターフェイスは以下のいずれかのパターンで開発が進む場合が多いです。 パターン1: 手動でインターフェイスのドキュメント(仕様書等)を記述し、サーバ、クライアントの開発者でその要件を満たす実装を行う パターン2: サーバ側のコードから、インターフェイスドキュメントを自動生成し、クライアントがその要件を満たす実装を行う パターン3: 手動でインターフェイスドキュメントを記述し、各システム用にサーバとクライアントのコードを自動生成する gRPCを用いた開発では上記の3のパターンで行います。