すべてのプロダクト
Search
ドキュメントセンター

Function Compute:タスク関数を作成する

最終更新日:Nov 09, 2025

Function Compute は、大規模なタスク処理のための、フルマネージドで、すぐに使用でき、観測可能なプラットフォームを提供します。Function Compute コンソールでタスク関数を作成できます。タスク関数とイベント関数の主な違いは、タスク関数ではタスクモードがデフォルトで有効になっていることです。タスクモードでは、非同期タスクの送信、表示、停止、リトライができます。

関数の作成

  1. Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、[関数管理] > [関数リスト] を選択します。

  2. 上部のナビゲーションバーでリージョンを選択します。[関数] ページで、[関数の作成] をクリックします。

  3. 表示されるダイアログボックスで、プロンプトに従って [タスク関数] タイプを選択し、[タスク関数の作成] をクリックします。

  4. [タスク関数の作成] ページで、次の設定項目を構成し、[作成] をクリックします。

    • 基本設定: 関数の仕様を設定します。

      設定項目

      説明

      関数名

      関数を識別する一意の名前。関数名は、同じアカウントおよびリージョン内で一意である必要があり、命名規則に従う必要があります。

      myFunction

      仕様

      必要に応じて、関数の [vCPU][メモリ][ディスク] の仕様を設定します。仕様を設定すると、実際の関数呼び出しによって生成される各リソースの使用量は、仕様に期間を乗じて測定されます。詳細については、「課金の概要」をご参照ください。

      説明
      • vCPU (コア単位) とメモリ (GB 単位) の比率は 1:1 から 1:4 の間でなければなりません。

      • ディスク上のすべてのディレクトリは書き込み可能です。ディスク領域は共有されます。

      • ディスクのライフサイクルは、基盤となる関数のインスタンスライフサイクルと同じです。インスタンスがシステムによって回収されると、ディスク上のデータもクリアされます。ファイルを永続的に保存するには、NAS または OSS をマウントします。詳細については、「NAS ファイルシステムの設定」および「OSS オブジェクトストレージの設定」をご参照ください。

      • vCPU: 0.35 vCPU

      • メモリ: 512 MB

      • ディスク: 512 MB (このサイズは無料です。Function Compute は、ディスク使用量に対して 512 MB の無料クォータを提供します。)

    • Elastic 設定:Elastic モードを選択します。

      設定項目

      説明

      最小インスタンス数

      ビジネスがレイテンシの影響を受けやすい場合は、最小インスタンス数を 1 以上に設定して、事前にリソースを予約し、コールドスタートのレイテンシを削減します。

      説明
      • 最小インスタンス数を 1 以上に設定し、最小インスタンスの自動スケーリングポリシーが設定されていないか、または自動スケーリングポリシーが一定期間有効でない場合、現在の最小インスタンス数はここで設定した値になります。

      • 複数の弾性ポリシーが設定されている場合、システムはトリガーされたときに各ポリシーの [最小インスタンス数] を計算し、現在アクティブなすべてのポリシーの中から最も高い最小インスタンス数の値を現在の [最小インスタンス数] として使用します。

        詳細については、「現在の最小インスタンス数の計算方法」をご参照ください。

      有効

    • 関数コード: 関数のランタイムとコードを設定します。

      設定項目

      説明

      ランタイム

      [ビルトインランタイム] を選択し、Python、Java、PHP、Node.js など、使い慣れた言語とバージョンを選択します。詳細については、「Function Compute ランタイム」をご参照ください。

      • [Web 関数] を作成するには、[カスタムランタイム] を選択します。詳細については、「Web 関数を作成する」をご参照ください。

      • [GPU 関数] を作成するには、[カスタムイメージ] を選択します。詳細については、「GPU 関数を作成する」をご参照ください。

      このトピックでは、[ビルトインランタイム] を例として使用します。

      [ビルトインランタイム] > [Node.js] > [Node.js 16]

      コードのアップロード方法

      Function Compute にコードをアップロードする方法を選択します。

      • [サンプルコードの使用]: 最初に関数を作成し、後でコードを改善したい場合は、プラットフォームが提供する Hello World サンプルコードを選択できます。その後、関数詳細ページの [コード] タブでオンラインでコードを記述およびデバッグできます。

      • [ZIP パッケージを使用してコードをアップロード]: 関数コードの ZIP パッケージを選択してアップロードします。

      • [JAR パッケージを使用してコードをアップロード]: 関数コードの JAR パッケージを選択してアップロードします。

        このオプションは Java ランタイムでのみ使用できます。

      • [フォルダを使用してコードをアップロード]: 関数コードを含むフォルダを選択してアップロードします。

      • [OSS からコードをアップロード]: 関数コードの [バケット名][ファイル名] を選択します。

      サンプルコードの使用

      ハンドラ

      リクエストハンドラを設定します。Function Compute ランタイムは、ハンドラをロードして呼び出し、リクエストを処理します。

      [コードのアップロード方法][サンプルコードの使用] に設定した場合、[ハンドラ] を変更する必要はありません。別のコードアップロード方法を選択した場合は、必要に応じて [ハンドラ] を変更してください。そうしないと、関数の実行時にエラーが発生します。

      index.handler

      実行タイムアウト期間

      タイムアウト期間を設定します。[実行タイムアウト期間] のデフォルト値は 60 秒です。最大値は 86,400 秒です。

      60

    • 権限、ネットワーク、ストレージ: 関数のアクセスロール、ネットワーク、ストレージマウントを設定します。

      設定項目

      説明

      関数ロール

      Function Compute はこの RAM ロールを使用して、Alibaba Cloud リソースにアクセスするための一次キーを生成し、そのキーをコードに渡します。詳細については、「関数ロールを使用して Function Compute に他の Alibaba Cloud サービスへのアクセス権限を付与する」をご参照ください。

      mytestrole

      VPC へのアクセスを許可

      この機能を有効にすると、関数が VPC 内のリソースにアクセスできるようになります。詳細については、「ネットワークの設定」をご参照ください。

      有効

      VPC

      このパラメーターは、[VPC へのアクセスを許可][はい] に設定した場合に必要です。新しい VPC を作成するか、ドロップダウンリストからアクセスしたい VPC の ID を選択します。

      fc.auto.create.vpc.1632317****

      VSwitch

      このパラメーターは、[VPC へのアクセスを許可][はい] に設定した場合に必要です。新しい vSwitch を作成するか、ドロップダウンリストから vSwitch ID を選択します。

      fc.auto.create.vswitch.vpc-bp1p8248****

      セキュリティグループ

      このパラメーターは、[VPC へのアクセスを許可][はい] に設定した場合に必要です。新しいセキュリティグループを作成するか、ドロップダウンリストからセキュリティグループを選択します。

      fc.auto.create.SecurityGroup.vsw-bp15ftbbbbd****

      デフォルト NIC のインターネットアクセスを許可

      関数がデフォルトのネットワークインターフェイスカードを介してインターネットにアクセスすることを許可するかどうかを指定します。

      重要

      固定パブリック IP アドレス機能を使用する場合は、[デフォルト NIC のインターネットアクセスを許可] を無効にする必要があります。そうしないと、設定した固定パブリック IP アドレスが有効になりません。詳細については、「固定パブリック IP アドレスの設定」をご参照ください。

      有効

      NAS ファイルシステムのマウント

      関数に NAS ファイルシステムを設定 して、複数の推論関数で共有されるモデルなど、関数間で共有されるデータを永続的に保存します。

      自動設定を選択した場合、システムはデフォルトで Alibaba-Fc-V3-Component-Generated という名前の既存の汎用型 NAS ファイルシステムを使用します。現在のアカウントで対象となる NAS ファイルシステムが見つからない場合、システムは自動的に作成します。

      有効

      OSS オブジェクトストレージのマウント

      関数に OSS オブジェクトストレージをマウントして、ログ、ビジネスファイル、その他のデータを永続的に保存します。詳細については、「OSS オブジェクトストレージの設定」をご参照ください。

      有効

    • ログとトレース分析

      設定項目

      説明

      ロギング

      この機能を設定すると、関数の実行ログが Simple Log Service に永続的に保存されます。これは、コードのデバッグ、エラーの分析、データの分析に役立ちます。詳細については、「ロギング機能の設定」をご参照ください。

      • [自動設定]: 自動的に serverless-<region_id> で始まるログプロジェクトを選択します。

        このようなログプロジェクトは各リージョンに 1 つだけ作成されます。システムが現在のリージョンにこのログプロジェクトが既に存在することを発見した場合、それが直接使用されます。

      • [カスタム設定]: 宛先の [ログプロジェクト][Logstore] を手動で指定する必要があります。

      有効

    • その他の設定

      設定項目

      説明

      タイムゾーン

      関数のタイムゾーンを選択します。タイムゾーンを設定すると、[TZ] という名前の環境変数が関数に自動的に追加されます。その値は、設定した宛先のタイムゾーンです。

      UTC

      タグ

      関数に タグ を設定して、関数をグループで管理します。タグキーとタグ値の両方を設定する必要があります。

      key : value

      リソースグループ

      関数が属する リソースグループ を選択します。リソースグループを使用して、関数をグループで管理します。

      Default-Resource-Group

      環境変数

      環境変数を使用して、コードを変更することなく関数の動作を柔軟に調整します。詳細については、「環境変数の設定」をご参照ください。

      {
          "BUCKET_NAME": "MY_BUCKET",
          "TABLE_NAME": "MY_TABLE"
      }
  5. [関数詳細] ページで、[コード] タブを選択し、[関数のテスト] をクリックします。

    実行が成功したら、[応答] を表示します。この例の応答は hello world です。

関数が作成されると、関数詳細ページの [タスク] タブでタスクモードがデフォルトで有効になります。

image

関数の編集

以下の手順に従って、関数コードを編集、インポート、またはエクスポートします。他の設定項目を変更するには、「関数の設定」をご参照ください。

  1. [関数詳細] ページで、[コード] タブで関数コードを変更できます。左側のブランチに変更が表示されている場合 (図の ①)、まず [コードのデプロイ] をクリックして変更を適用し、次に [関数のテスト] をクリックする必要があります。

    image

  2. また、バックアップのためにコードをエクスポートしたり、デプロイメントのためにコードを再アップロードしたりすることもできます。

    image

    image

関数の削除

Function Compute コンソールにログインします。[関数] ページで対象の関数を見つけ、[アクション] 列の [削除] をクリックします。表示されるダイアログボックスで、関数がトリガーや最小インスタンスの自動スケーリングポリシーなどのリソースにバインドされていないことを確認します。その後、削除を確定します。

参考

  • タスク関数が作成されると、タスクモードがデフォルトで有効になります。タスクモードを使用して、非同期呼び出しタスクを管理できます。詳細については、「タスク管理」をご参照ください。

  • 既存の関数で非同期タスクモードを有効にするには、「既存の関数で非同期タスクモードを有効にする」をご参照ください。

  • コンソールに加えて、API を呼び出すことで Function Compute で非同期タスクを開始できます。詳細については、「InvokeFunction」をご参照ください。

  • 関数の実行がタイムアウトした場合は、「関数管理に関する FAQ」をご参照ください。

  • 呼び出し頻度の低い関数は、実行に時間がかかる場合があります。詳細については、「使用頻度の低い関数はなぜ呼び出しに時間がかかるのですか?」をご参照ください。弾性インスタンスのコールドスタートレイテンシの影響をなくすには、最小インスタンス数を 1 以上に設定します。

  • コード内で Alibaba Cloud リソースを特定するために、関数の Alibaba Cloud リソースネーム (ARN) を取得するには、「関数の ARN を取得する」をご参照ください。