Cloud Functions バージョンの比較
Cloud Functions には、Cloud Functions(第 1 世代)と Cloud Functions(第 2 世代)という 2 種類のプロダクト バージョンがあります。第 2 世代は、Cloud Run と Eventarc をベースにした新しいバージョンで、機能が強化されています。このページでは、Cloud Functions(第 2 世代)で導入された新機能と 2 つのプロダクト バージョンの相違点について説明します。
可能な限り、新しい関数には Cloud Functions(第 2 世代)を選択することをおすすめします。しかしながら、今後も Cloud Functions(第 1 世代)のサポートを継続する予定です。
Cloud Functions(第 2 世代)の新機能
Cloud Functions(第 2 世代)は、Google Cloud の次世代の Functions as a Service サービスです。Cloud Functions(第 2 世代)は Cloud Run と Eventarc 上に構築されており、以下のようにインフラストラクチャの強化と幅広いイベント カバレッジを Cloud Functions に提供しています。
- より長いリクエストの処理時間: Cloud Storage または BigQuery からの大量のデータ ストリームの処理など、リクエスト時間が長いワークロードを実行します。
- より大きなインスタンス サイズ: より大きなインメモリ ワークロード、コンピューティング負荷の高いワークロード、並列ワークロードを実行します。
- 同時実行性の向上: 単一の関数インスタンスで複数の同時リクエストを処理し、コールド スタートを最小限に抑え、レイテンシを改善します。
- トラフィック管理: 異なる関数のリビジョン間でトラフィックを分割するか、関数を以前のバージョンにロールバックできます。
- Eventarc のインテグレーション: Eventarc トリガーがネイティブにサポートされ、Eventarc でサポートされている 90 以上のイベントソースすべてが Cloud Functions で利用可能になります。
- 広範な CloudEvents のサポート: あらゆる言語のランタイムで業界標準の CloudEvents をサポートし、一貫したデベロッパー エクスペリエンスを提供します。
詳しくは、比較表をご覧ください。
Cloud Functions(第 2 世代)は Cloud Run 上に構築されているため、Cloud Functions(第 2 世代)は Cloud Run とリソースの割り当てと上限を共有します。詳しくは、割り当てをご覧ください。
比較表
機能 | Cloud Functions(第 1 世代) | Cloud Functions(第 2 世代) |
---|---|---|
イメージ レジストリ | Container Registry または Artifact Registry | Artifact Registry のみ |
リクエストのタイムアウト | 最大 9 分 |
|
インスタンスのサイズ | 最大 8 GB の RAM(2 vCPU) | 最大 16 GiB の RAM(4 vCPU) |
同時実行 | 関数インスタンスごとに 1 件の同時リクエスト | 関数インスタンスあたり最大 1,000 件の同時リクエスト |
トラフィック分割 | 非対応 | サポート対象 |
イベントタイプ | 7 つのソースからのイベントの直接サポート | Eventarc でサポートされているすべてのイベントタイプをサポート(Cloud Audit Logs を介した 90 以上のイベントソースを含む) |
CloudEvents | Ruby、.NET、PHP のランタイムでのみサポート | すべての言語ランタイムのサポート |
セキュリティに関する更新 | 関数がデプロイまたは再デプロイされたとき 自動更新 |
関数がデプロイまたは再デプロイされたとき |
料金
詳しい料金情報については、Cloud Functions の料金をご覧ください。
Cloud Functions(第 2 世代)を使用している場合、Cloud Functions(第 2 世代)のみに関連する費用は次のように確認できます。
- Google Cloud コンソールの Cloud Billing レポートページに移動します。
- プロンプトが表示されたら、Google Cloud プロジェクトに関連付けられた請求先アカウントを選択します。
- [フィルタ] パネルの [ラベル] で、キー
goog-managed-by
と値cloudfunctions
を持つラベルフィルタを追加します。
次のステップ
- Cloud Functions の実行環境について学習する。
- サポートされている Cloud Functions のトリガーについて学習する。
- Cloud Functions のロケーションと料金の詳細を確認する。