ヤマムギ

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”,
と書いていることに気づかずに上記エラーで少し嵌りました。

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


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - AWS ,

ad

ad

  関連記事

執筆環境(PyCharm, CodeCommit, CodePipeline, S3, Lambda, 署名付きURL)

2018年から、年に1回ぐらい商業本の執筆をさせていただいております。 2020 …

RDSリザーブドDBインスタンスを購入しました

リザーブドインスタンス推奨事項を確認したで確認した結果、購入したほうがよさそうで …

AWS Summit 2017 Tokyo Day2 開場~基調講演

昨年に引き続き今年もAWS Summit Tokyoへ行ってきました。 朝一の新 …

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

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

Amazon FSx for Lustreのユーザーガイド入門演習

ファイルシステムの作成 FSx for Lustreを選択しました。 容量やスル …

当ブログ(WordPress)のCloudFrontのキャッシュヒット率があがった

当ブログの構成です。 S3とALB+EC2 Auto Scalingで構成してい …

ヤマムギvol.23 Amazon RDS for MySQLとAmazon Aurora Serverlessの起動のデモをしました

ゴールデンウィーク毎朝デモ勉強会は終わったのですが、土曜日にやれるときがあれば、 …

Redmineの添付ファイルをS3に同期する

RedmineをAWS上で構築するデザインを考えていて、せっかくなので冗長化しよ …

EC2 Windows インスタンス PowerShellでメタデータを見る

Linuxインスタンスならcurlコマンドで確認すればいいのですが、Window …

TuneCoreの売上データCSVをS3に格納してAthenaのクエリをRe:dashのデータソースにして可視化する

先日参加しましたAWS Summit Tokyo 2017で、 [JapanTa …