3ヶ月のベータ期間を経て,Googleは,Open APIベースのCloud Endpoints(GCE) API管理システムの一般供用開始を発表した。Googleによると,効率的でスケールアップに対応したAPIプラットフォームの実現がその目的だ。
GCEはGoogle Cloud Platform(GCP)上で動作するAPIのデプロイ,保護,監視,管理を行なうためのものだ。APIとクライアント側コードを生成する一連のツールとライブラリで構成されており,バックグラウンドサービスへのアクセスの簡素化を目的とする。GCEを使用する典型的な開発ワークフローは次のようになる。
- まず最初にCRUD API層を作成する。
- Java Data ObjectとJava Persistence APIを使用してアノテーション付きエンティティを定義し,GCEでAPIクラスに変換する。生成されたクラスは公開インターフェースとして,
listEntity
,getEntity
,updateEntity
などのメソッドを含む。 - GCEを使用して,iOS用,Android用,あるいはJavaScript用のクライアント側ライブラリを生成する。
- 権限やscope付きのAPIキー,Auth0を使用したユーザ認証,Firebase Authenticationなどの機能を追加して,APIのセキュリティを確保する。
- Google BigQueryを使用してAPIの利用状況や状態の監視,分析を行なう。
GCEのアーキテクチャはExtensible Service Proxy (ESP)をベースとしており,Googleの主張によれば,1ミリ秒以内の要求処理が可能だ。ESPはサーバ側でプロキシの役割を果たすと同時に,従来のAPI管理機能も提供する。設計上のこの選択は,Googleによれば,ネットワークホップをスキップすることにより,ESPのパフォーマンスとスケーラビリティの大きな要因ともなっている。ESPのパフォーマンスを把握する上での比較対象として,Googleは,従来のスタンドアロンのプロキシで生じるレイテンシが10~100ミリ秒の範囲だとしている。またGoogleによると,GCEのベータ期間中には,さまざまなユーザを対象として毎秒11,000件,1日あたり5,000万件の要求処理が可能であったということだ。
GCEはGoogle App EngineあるいはGoogle Container Engine(GCE)上で動作するバックエンドをサポートする。Extensible ProxyはKubernetes,あるいはGCEを使ってデプロイ可能だ。
GAに達するということは,Google Cloud Endpointsが今後は無料ではない,という意味でもある。ただしGoogleでは,1ヶ月あたり200万APIコールまで可能な無料ティアを提供している。その制限を越えると,100万リクエストあたり3ドルが課金される。GCEを使用するには,Googleがプラットフォーム毎に提供しているクィックスタートのいずれかに従えばよい。
この記事を評価
- 編集者評
- 編集長アクション