ヤマムギ

growing hard days.

*

AWS Step Functions まずはパラレルでLambdaを並列実行してみました

   

複数のlambdaの実行制御をLambdaでやってましたが、その部分をStep Functionsで可視化して分けられるのかと思い使えるようにしていきたいと思います。

まずは、パラレルでLambdaを並列実行してみました。

試すこと

最初のLambdaがSQSにキューを作って、次の2つのLambdaがキューの内容を並列でSlackへ投稿します。

Step Functionsの設定

Step Functionsのグラフはこうなりました。

Step Functionsのコードはこちらです。
これをコードに書くとグラフが上記のようになります。

最初のLambdaの設定

  • Comment : コメントを記載します
  • StartAt : 最初に起動するステートを指定します
  • States : ステートを記入していきます

最初に実行するステートとして”set_queue”を指定したので、”set_queue”の内容を定義します。

  • Type : Lambdaを実行する場合”Task”を指定します。
  • Next : このステートが正常終了した次に実行するステートを指定します。
  • Resource : Lambdaのarnを指定します。

並列で実行するLambdaの設定

  • Type : 並列実行のステートとして”Parallel”を指定します。
  • Next : 並列実行するステートがすべて正常終了した次に実行するステートを指定します。
  • Branches : ステートの固まり(States)の配列を定義します。

Branchesの配列の中はそれぞれがStatesとなるので、”StartAt”から指定する必要があるようです。

終了処理

  • Type : 何もしない”Pass”を指定します。
  • End : 終了なので trueを指定します。

コード

githubにおいてます。

手っ取り早く試したい方はSlackのwebhook incomingとSQSの設定をしてご利用ください。

余談 嵌ったエラー

「AWL 定義に問題があります。確認してもう一度お試しください」

“Type”: “Task”,

“Type”: “task”,
と書いていることに気づかずに上記エラーで少し嵌りました。

次は分岐とループを調べたいです。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

Lucidchart AWSアカウントからインポート機能で自動作図

SNSでLucidchartというサービスが話題になってました。 AWSの環境を …

AWS Organizations組織の移動

AWS Organizations組織の移動 やりたいことは、Organizat …

AWS Transfer Family S3向けのSFTP対応サーバーをVPCで作成してEIPをアタッチ

EIPの作成 同じリージョンでEIPを作成しておきます。 SFTP対応サーバーの …

Amazon SNSサブスクリプションフィルターを設定してPython(boto3)からPublish

上記のような構成でRocketChatを使うとき使わないときがあります。 都度都 …

AWS CodeDeployからEC2 Auto Scalingにデプロイするチュートリアル

公式チュートリアルチュートリアル: アプリケーションを CodeDeployグル …

EC2 Auto ScalingカスタムメトリクスのモニタリングにCloudWatch検索式が便利でした

EC2 Auto Scalingで起動したインスタンスのカスタムメトリクス この …

Transit GatewayポリシーテーブルでCloud WANのコアネットワークに接続しました

「ポリシーテーブルってなんですか?」のご質問をいただいたので設定してみました。 …

Aurora Serverless Data APIを有効にしてLambdaからクエリを実行

Aurora Serverless作成 MySQLを作成しました。 作成時にDa …

AWS WAFのマネージドルールを見てみました

Web ACLで[Add managed rule groups]を選択しました …

AWS Secrets ManagerのローテーションでLambda関数の管理が必要なくなりました

Amazon RDS と AWS Secrets Manager の統合を発表と …