GoogleがオープンソースのRPCフレームワーク「gRPC 1.0」を発表
Googleは8月23日、オープンソースのRPC(リモートプロシージャコール)フレームワークの最新版「gRPC 1.0」公開を発表した。HTTP/2に対応し、大規模な分散システム向けの機能を備えるもので、運用環境で利用できるとしている。
gRPCはGoogleが2015年に発表したRPC(リモートプロシージャコール)フレームワーク。HTTP/2を標準とし、クラウド、マイクロサービスなど最新の利用に適したサーバー間通信プロトコルを目指す。それまで「Stubby」として社内開発、利用されていたものをオープンソースで公開した。同社ではgRPCを利用して毎秒100億単位のリクエストを処理しているという。
双方向ストリーミング、フロー制御、ヘッダー圧縮、多重リクエストなどの機能を持つ。フレームワーク内で複雑な処理を行うため、分散システムでの接続、運用、デバッグをローカルでの関数呼び出しのように容易に利用できるとしている。ライセンスはBSDライセンス。
Googleは合わせて、疎結合を可能にするバイナリシリアライズプロトコル技術Protocol Buffersも公開している。RPCデータの伝送に利用でき、これを利用したサービス定義やクライアントライブラリの自動生成が可能。
gRPC 1.0では、運用環境で利用できるレベルの安定性を提供する。C++、Java、Go、Node、Ruby、Python、C#など多数の言語バインディングも提供去れ、WindowsおよびMac OS X、Linuxで利用できる。Python 3系やPHP 7系のサポートも加わった。Objective-CとAndroid Javaライブラリにより、iOSとAndroidもサポートされる。これによってモバイルアプリとバックエンドサービスとの接続をさらに効率化できるという。
インストールが容易になったほか、APIの安定性、性能の改善、ダッシュボードなども強化点となる。
gRPC 1.0はプロジェクトのWebサイトより入手できる。