What is the primary purpose of AWS Step Functions?
To coordinate multiple AWS services into serverless workflows (known as state machines), managing application state, retries, and error handling.
AWS Step Functions simplifies the process of building complex applications by allowing developers to define workflows visually.
What are the two main types of AWS Step Functions?
Each type serves different use cases based on workflow duration and processing needs.
What is the maximum duration for a Standard Workflow?
1 year
This allows for extensive processes that require long-term execution.
What is the maximum duration for an Express Workflow?
5 minutes
This is suitable for quick, event-driven tasks.
What is the fundamental building block of an SFN state machine?
A State, defined in a JSON-based Amazon States Language (ASL).
States represent the various steps in a workflow.
Examples include Task, Choice, Wait, Succeed, and Fail.
In Step Funtions
What does the Task state do?
It performs work by calling an AWS service API
How do you handle branching logic (if/then/else) within a Step Functions workflow?
Use the Choice state.
The Choice state allows for conditional execution based on input.
How can Step Functions pause a workflow for a specific period of time?
Use the Wait state.
This state allows for delays in the workflow execution.
Which SFN feature allows a state to retry a failed task a defined number of times?
A Retrier field configured on a Task state, often utilizing exponential backoff and jitter.
This feature helps to manage transient errors effectively.
Which SFN feature allows you to handle expected failures by redirecting the workflow to a cleanup or notification state?
A Catcher field configured on a Task state.
This allows for graceful error handling in workflows.
What SFN feature allows a task to wait for an external service (like a human approval) to complete before proceeding?
Callback Patterns using a Task Token, where the external service sends the token back to Step Functions upon completion.
This is useful for workflows that require human intervention.
How do you ensure that multiple parallel tasks are all completed before the workflow moves to the next state?
Use the Parallel state, which executes branches concurrently and waits for the results of all branches to merge.
This state is crucial for optimizing workflow execution time.
When should you choose Express Workflows over Standard Workflows?
This choice is based on the specific needs of the application.