- https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-welcome.html
- fully managed state tracker and task coordinator
- helps development of asynchronous and distribute applications by providing a programming model and infra for coordinating distributed components
- uses IAM for access control
- acts similarly to a bus or a mediator – allowing components to communicate
- access via: SDK, AWS Flow Framework (enhanced SDK for writing distribute workflows), HTTP API, development environment for specific language
- REGIONAL service
- Workflow – set of activities. A workflow runs a domain that controls the workflow scope
- Worker – receives an activity task, processes and feeds the status back
- A worker can run on AWS (EC2, Lambda, etc.) or on-premises
- Task – activity performed by a worker, can be distributed across multiple servers or even Regions.
- SWF assigns tasks to workers and maintains a state of each task
- Decider – controls the flow of activities in workflow execution; schedules tasks; processes task responses; ends workflows – all trough SWF
- Workers and Deciders poll SWF for tasks
- SWF – central hub for data exchange among deciders workers and the user
- Execution History – SWF maintains the state of each workflow execution. SWF includes the current workflow state in Decision task definition (below) – thus keeping the Decider up to date
- Task Types:
§ Activity task – action for worker to perform
§ Lambda task – execution of a lambda function
§ Decision task – informs the Decider on the current workflow state
- Endpoints – exits in regions. SWF in one region has no access to workflows
in another region
No comments:
Post a Comment