Cloud Functions のクイックガイド
Google Cloud Japan Team
※この投稿は米国時間 2021 年 6 月 19 日に、Google Cloud blog に投稿されたものの抄訳です。
Cloud Functions は、フルマネージドのイベント ドリブンなサーバーレス Functions as a Service(FaaS)です。イベントに応答して実行される、この小さなコードはフルマネージドなので、デベロッパーはサーバーの管理やトラフィックの急増によるスケールアップとスケールダウンを心配することなく、コードを記述してデプロイできます。また、オブザーバビリティと診断のために、Cloud Operations と完全に統合されています。Cloud Functions は、ローカルでのデバッグと移行を容易にするオープンソースの FaaS フレームワークをベースにしています。
Cloud Functions を使用するには、サポート対象言語(Go、Python、Java、Node.js、PHP、Ruby、.NET)でロジックを記述し、コンソール、API、Cloud SDK を使ってデプロイして、任意のサービスの HTTP(s) リクエスト(たとえば、Cloud Storage へのファイル アップロード、Pub/Sub や Firebase のイベント、コマンドライン インターフェース(CLI)経由の直接呼出しなど)経由でトリガーします。
十分な無料枠があり、料金はイベント数、コンピューティング時間、メモリ、上り(内向き) / 下り(外向き)リクエストに基づいていて、関数がアイドル状態の場合は無料です。セキュリティのために、Identity and Access Management(IAM)を使用して、関数にアクセスできるサービスやユーザーを定義できます。また、VPC コントロールを使用してネットワーク ベースのアクセスを定義することができます。
Cloud Functions のユースケース
Cloud Functions のユースケースには次のようなものがあります。
サードパーティのサービスや API との統合
軽量の ETL のような非同期ワークロード
軽量の API や Webhook
現場のセンサーや機器の IoT 処理とアップデート
リアルタイム ファイル処理(ファイルが Google Cloud Storage にアップロードされるとすぐに行われるメディアのコード変換やサイズ変更などのユースケース向け)
リアルタイム ML ソリューション(GCS にアップロードされたファイルのメディア翻訳や画像認識などのユースケース向け)
チャット アプリケーションやモバイルアプリのバックエンド
Firebase Functions と Cloud Functions の違いとは
Firebase デベロッパーの場合は、おそらく Firebase Functions を使用します。Firebase Functions の関数は、Firebase のダッシュボードやウェブサイトから作成されます。Cloud Functions と Firebase Functions はどちらも同じことができますが、特徴とデプロイ方法が若干異なります。Firebase Functions にはローカル エミュレータがあり、Cloud Functions の場合は Functions Framework を使用します。
Cloud Functions の詳細については、ドキュメントをご覧ください。関数を作成して実行できるようになったら、ヒントとアドバイスをご参照ください。
#GCPSketchnote をさらにご覧になるには、GitHub リポジトリをフォローしてください。同様のクラウド コンテンツについては、Twitter で @pvergadia をフォローしてください。thecloudgirl.dev もぜひご覧ください。
-Google デベロッパー アドボケイト Priyanka Vergadia