この記事は、Merpay Tech Openness Month 2020 の 8 日目の記事です。 こんにちは。メルペイのコード決済チームでバックエンドエンジニアをしている @ktr です。 メルペイではマイクロサービスアーキテクチャを採用しており、それぞれのマイクロサービス間の通信プロトコルとして gRPC を、リクエスト・レスポンスのシリアライズフォーマットとして Protocol Buffers を採用しています。gRPC + Protocol Buffers を採用することにより、API のクライアントとサーバのインターフェース部分のコードを自動生成でき、リクエスト・レスポンスのエンコード、通信処理といった gRPC 特有の処理をほとんど意識せずに利用できます。 しかし、その一方で Protocol Buffers はバイナリベースのシリアライザであるため、例えば一般的な HTT