新しい Cloud Functions(第 2 世代)でイベント ドリブン アーキテクチャを強化
Google Cloud Japan Team
※この投稿は米国時間 2022 年 2 月 15 日に、Google Cloud blog に投稿されたものの抄訳です。
本日は、Google Cloud の次世代 Functions-as-a-Service プロダクトである Cloud Functions(第 2 世代)をご紹介します。この次世代バージョンの Cloud Functions は、強化されたインフラストラクチャと、パフォーマンスとスケーラビリティの高度な制御、関数のランタイムに関するより細かい制御を提供する進化した機能を備え、90 を超えるイベント ソースからトリガーできます。さらに、このインフラストラクチャには Google Cloud の最先端のサーバーレスおよびイベント管理のインフラストラクチャ、Cloud Run と Eventarc が使用されています。
ワークロードのニーズを満たすインフラストラクチャ
Cloud Functions には、第 2 世代の関数のためのさまざまな新しい機能が追加されています。これには、同時実行(関数インスタンスごとに最大 1,000 の同時リクエスト)、より大きいインスタンス(16 GB のメモリと 4 つの vCPU)、HTTP 関数のより長い処理時間(最大 60 分)、インスタンスの最小数(事前にウォームアップされたインスタンス)などがあります。
より長い処理時間 - 第 2 世代のクラウド関数を HTTP 関数に対して最大 60 分間実行でき、Cloud Storage または BigQuery からの大規模なデータ ストリームの処理など、より長いリクエストのワークロードを実行しやすくします。
より大きいインスタンス - 最大 16 GB の RAM と 4 つの vCPU を第 2 世代クラウド関数で活用して、より大きなインメモリの、コンピューティング負荷の高いワークロードを実行でき、より多くの並行するワークロードを実行できます。
同時実行 - 1 つの関数で最大 1,000 の同時リクエストを活用でき、コールド スタートを最小限に抑えて、スケーリング時のレイテンシと費用を改善できます。
インスタンスの最小数 - 事前にウォームアップされたインスタンスを提供してコールド スタートを減らし、アプリケーションのブートストラップ時間がアプリケーションのパフォーマンスに影響を与えないようにします。
トラフィック分割 - 第 2 世代クラウド関数は、関数の複数リビジョンをサポートし、異なるリビジョン間でトラフィックを分類して関数を以前のバージョンにロールバックします。
広範なイベント カバレッジと CloudEvents のサポート
第 2 世代クラウド関数には Eventarc のネイティブ サポートが含まれるようになりました。それにより 90 以上のイベント ソース が直接ソースと Cloud Audit ログ(BigQuery、Cloud SQL、Cloud Storage、Firebase など)から提供されます。もちろん、Cloud Functions は依然として Pub/Sub に直接パブリッシュすることでカスタム ソースからのイベントをサポートします。これらのイベントドリブンな関数は、ソースに関係なく業界基準の CloudEvents に準拠しているため、一貫したデベロッパー エクスペリエンスを保証します。
新たなデベロッパー エクスペリエンス
Cloud Functions は、強化された UI、カスタマイズ可能なダッシュボード、改善されたデベロッパー エクスペリエンス、ユーザー補助のアップデートを提供します。新しいシームレスなオンボーディング エクスペリエンスにより、簡単に第 1 世代と第 2 世代の関数を 1 つの場所ですばやく開発してデプロイできます。
デプロイメントの進行状況を表すトラッカーが第 2 世代関数のデプロイメントのプロセスをナビゲートし、各ステップに関連するエラーを見つけやすくします。また、関数に関する情報を見つけやすくする新しいメニューとバッジを使用した UI により、Eventarc との統合が簡素化されます。
OSS Buildpacks と Functions Frameworks に基づくポータビリティ
第 2 世代関数はオープンソースの Buildpacks と Functions Frameworks を使用してビルドされており、関数をどこでも実行できるポータビリティを実現しています。
新しい Cloud Functions の詳細を確認する
ぜひ Cloud Functions を使用して関数をビルドしてみてください。Cloud Functions について詳しくは、こちらをご覧ください。また、使用を開始するには、Quickstarts: Cloud Functions をご利用ください。
- プロダクト マネージャー Vinod Ramachandran
- プロダクト マネージャー Jaisen Mathai