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

Function Compute:タスクオーケストレーション

最終更新日:Dec 17, 2024

Function ComputeとCloudFlowを統合して、大規模で複雑なシナリオのタスクプロセスに関数の非同期呼び出しを適用できます。 シーケンス、選択、並列など、CloudFlowの制御ロジックに基づいて、Function Compute非同期タスクを調整できます。 CloudFlowは、指定されたステップに従ってタスクの実行を信頼できる方法で調整し、各タスクの状態遷移を追跡し、必要に応じて定義された再試行ロジックを実行して、スムーズで成功したフロータスクを保証します。 このトピックでは、非同期タスクのオーケストレーションを設定する方法について説明します。

前提条件

手順

  1. CloudFlowコンソールにログインします。 上部のナビゲーションバーで、リージョンを選択します。

  2. 左側のナビゲーションウィンドウで、[ワークフロー] をクリックします。 [ワークフロー] ページで、[ワークフローの作成] をクリックします。

  3. ワークフローの作成ダイアログボックスで、ワークフローを作成する方法を選択し、ワークフローのモードを選択します。

    CloudFlowでは、標準モードまたはエクスプレスモードでワークフローを作成できます。 2つのモードの詳細については、「標準モードとエクスプレスモード」をご参照ください。 詳細については、「空白のキャンバスに基づくワークフローの作成」をご参照ください。

  4. [ワークフローの編集] ページで、ワークフローを定義し、ワークフローの実行に使用するロールを設定します。

    1. フローコードを入力します。

      CloudFlow StudioまたはYAMLを使用してフローを編集できます。 この例では、YAMLが使用されています。

      フローの詳細ページの右上隅で、[YAML] をクリックします。 左側のコードエディターで、フローで使用するコードを入力し、[保存] をクリックします。

      次のコードスニペットは例を示します。

      Type: StateMachine
      Name: flow
      SpecVersion: v1
      StartAt: InvokeFunction
      States:
        - Type: Task
          Name: InvokeFunction
          Action: FC:InvokeFunction
          TaskMode: RequestComplete
          Parameters:
            invocationType: Async
            resourceArn: acs:fc:{region}:{account}:services/{serviceName}.{qualifier}/functions/{functionName}
          End: true
    2. フローロールを設定します。

      フローの詳細ページの右上隅で、[ワークフローの設定] をクリックします。 [ロールの設定] セクションで、[実行ロール] ドロップダウンリストからロールを選択し、[保存] をクリックします。

      説明

      フローに設定されたロールにAliyunFCInvocationAccessポリシーがアタッチされていることを確認します。

  5. フローの詳細ページで、右上隅の [実行] をクリックしてフローをトリガーし、フローが期待どおりに機能するかどうかを確認します。