SWF is a web service that coordinates and manages the execution of activities across distributed application components. Tasks can be run asynchronously.
- Activity is a single step within a workflow.
- Task is a processing step, which interacts with workers – Activity Task and Decision task
- Worker receives a task and take action on it.
- SWF guarantees the order of execution – consistent execution.
SQS vs. SWF
- SQS has a 14-day retention period. In SWF, workflow executions can last up to 1 year.
- SQS is message-oriented, and SWF is task-oriented.
- SWF keeps track of all tasks and events.
- SWF can be used when human actions are required.