51
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Step Functions とは

Posted at

勉強前イメージ

全然イメージつかん・・
そういうサービスがあるってことだけは知ってる

調査

AWS Step Functions とは

分散アプリケーションやマイクロサービスをステートマシンと呼ばれる仕組みで設定や管理の自動化ができます。
AWSコンソール上では各サービスをコンポーネントとしてワークフローという形式で可視化することが出来ます。
また、各種実行履歴などもログから追うことも出来ます。
Step Functionsを使用することで、タスクで構成される複雑なワークフローを簡単に定義できます

ステートマシンのイメージ

例えば自販機だと3つのプロセスに分割できます。

  • 入金待ち
    • ユーザが購入に十分な金額を投入するまで待機。
    • 入金され次第、次のプロセスに進む
  • ジュースの選択
    • ユーザがジュースの選択を行うまで待機。
    • 選択され次第、次のプロセスに進む。
  • おつり・ジュースの出力

このフローをStep Functionsでは ステートマシン と呼び、
人間による操作を必要とするような長時間実行されたり・半自動化されたワークフローを作成することもできます。

AWS Step Functions の費用

Step Functionsは状態の遷移ごとに課金が発生。
毎月4000回までは無料だが、4000回を超えると課金が発生。
リージョンごとに費用は異なります。

コンソール上で確認

  • ステートマシンの作成

1Step Functions Management Console - Google Chrome.png

  • ステートマシンを定義する

試しに作るだけなので、標準のタイプで進めます。

2Step Functions Management Console - Google Chrome.png

ワークフローを定義して、それを可視化(右の図)することが出来ます。

3Step Functions Management Console - Google Chrome.png

  • 詳細を指定

ステートマシン名やアクセス制御など、デフォルトで進め、記載できるとステートマシンの作成を行います。

4Step Functions Management Console - Google Chrome.png

  • 作成されました

5Step Functions Management Console - Google Chrome.png

  • ステートマシンを実行する

6Step Functions Management Console - Google Chrome.png

  • 実行

デフォルト値で実行します

7Step Functions Management Console - Google Chrome.png

  • 結果を確認

グラフインスペクター で、各ステップごとの実行結果も確認することが出来ます。

8Step Functions Management Console - Google Chrome.png

勉強後イメージ

今まで全部自動で・・・みたいなのはよくAWSのサービスでもあったけど、
途中で人間が入力しないといけないという場合も使うことができるのか!

参考

51
28
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
51
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?