Flask、Express、Spring Boot などの一般的なフレームワークで構築されたアプリケーションを実行したり、既存のフレームワークベースのアプリケーションを Function Compute に移行したりするには、Web 関数を作成します。Function Compute では、リソースは関数ごとにスケジュールされ、実行されます。各関数は独立しており、分離されています。このトピックでは、Function Compute コンソールで Web 関数を作成および管理する方法について説明します。
関数の作成
-
Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。
-
上部のメニューバーで、リージョンを選択します。関数リスト ページで、関数を作成 をクリックします。
-
表示されたダイアログボックスで Web 関数 を選択し、Web 関数の作成 をクリックします。
-
Web 関数の作成 ページで、次の設定を構成し、作成 をクリックします。
-
基本設定:関数の仕様とインスタンス設定を行います。
パラメーター
説明
例
関数名
関数の一意の識別子。名前は、ご利用の Alibaba Cloud アカウントのリージョン内で一意であり、命名規則に従う必要があります。
myFunction
仕様
ワークロードに応じて、関数の [vCPU]、メモリ、ディスク の仕様を設定します。これらの仕様と実行時間に基づいたリソース使用量に対して課金されます。詳細については、「課金概要」をご参照ください。
説明-
vCPU サイズ (コア単位) とメモリサイズ (GB 単位) の比率は、1:1 から 1:4 の範囲内である必要があります。
-
ディスク上のすべてのディレクトリは書き込み可能であり、ディスク領域はすべての関数インスタンスで共有されます。
-
ディスク上のデータはエフェメラルであり、インスタンスが回収されると失われます。ファイルを永続化するには、NAS ファイルシステムまたは OSS バケットをマウントします。詳細については、「NAS ファイルシステムの設定」および「OSS の設定」をご参照ください。
-
vCPU:0.35 vCPU
-
メモリ:512 MB
-
ディスク:512 MB (課金対象外。Function Compute はディスク領域に対して 10 GB の無料クォータを提供します。)
単一インスタンスの同時実行性
1 つの関数インスタンスが処理できる同時リクエスト数を設定します。詳細については、「インスタンスごとの同時実行数の設定」をご参照ください。
20
-
-
エラスティックポリシー:弾力性モードを選択します。
-
コード:関数のランタイムとコード設定を構成します。
パラメーター
説明
例
ランタイム環境
カスタム実行時 を選択し、使い慣れたプログラミング言語またはフレームワークを選択します。詳細については、「コード開発の概要」をご参照ください。
-
イベント関数 を作成するには、組み込み実行時 を選択します。詳細については、「イベント関数の作成」をご参照ください。
-
GPU 関数 を作成するには、カスタムイメージ を選択します。詳細については、「GPU アクセラレーション関数の作成」をご参照ください。
コードのアップロード方法
コードをアップロードする方法を選択します。
-
サンプルコードの使用:デフォルトのオプションです。ビジネス要件に応じて、Function Compute が提供するサンプルコードを選択できます。
-
ZIP パッケージでコードをアップロードします:関数コードを含む ZIP パッケージを選択してアップロードします。
-
フォルダー内のコードのアップロード:関数コードを含むフォルダを選択してアップロードします。
-
OSS を使用してコードをアップロード:OSS 内の関数コードパッケージの バケット名 と オブジェクト名 を指定します。
サンプルコードの使用
起動コマンド
このコマンドを指定しない場合は、コードのルートディレクトリに `bootstrap` という名前の起動スクリプトを用意して、アプリケーションを起動する必要があります。
npm run start
リスニングポート
コード内の HTTP サーバーがリッスンするポート。
9000
実行タイムアウト時間
関数実行のタイムアウト期間。実行タイムアウト時間 のデフォルト値は 60 秒、最大値は 86,400 秒です。
60
-
-
関数の編集
[関数の詳細] ページで、[コード] タブを使用して、コンソールで直接関数コードを編集できます。また、バックアップとしてコードをエクスポートしたり、新しいコードをアップロードしたりすることもできます。
左側のパネルに未コミットの変更 (① で示される) が表示されている場合は、[関数のテスト] をクリックする前に [デプロイ] をクリックして変更を適用してください。

コードをエクスポートまたはアップロードするには:


インスタンスの仕様やスケーリングなどの他の構成変更については、「関数インスタンスの仕様と弾力性の設定」をご参照ください。
関数の削除
Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、[関数管理] > [関数] を選択します。
対象の関数を見つけ、[操作] 列の [削除] をクリックします。
確認ダイアログボックスで、関数にアタッチされたリソース (トリガーや最小インスタンスの弾力性ポリシーなど) がないことを確認し、削除を確定します。
関数の ARN の取得
Aliyun リソースネーム (ARN) は、Alibaba Cloud リソースを一意に識別し、コードや他のサービスから関数を参照できるようにします。
Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、[関数管理] > [関数] を選択します。
上部のメニューバーで、リージョンを選択します。対象の関数をクリックします。
[関数の詳細] ページで、右側の [ARN のコピー] をクリックします。

関連トピック
-
Function Compute は、さまざまなユースケースに対応するために、イベント関数、Web 関数、タスク関数、GPU アクセラレーション関数の 4 種類の関数を提供しています。関数の種類の選択方法については、「技術選定ガイド」をご参照ください。
-
コンソールに加えて、API や Serverless Devs ツールを使用して Function Compute の関数を管理することもできます。詳細については、「CreateFunction」および「Serverless Devs クイックスタート」をご参照ください。
-
関数の実行がタイムアウトした場合は、「「Function time out after...」エラーが報告された場合の対処法」をご参照ください。
-
頻繁に呼び出されない関数は、呼び出し時間が長くなることがあります。詳細については、「頻繁に使用されない関数の呼び出し時間が長くなるのはなぜですか?」をご参照ください。コールドスタートのレイテンシーが弾力性のあるインスタンスに与える影響を軽減するには、最小インスタンスを 1 以上に設定します。