Amazon has launched yet another cloud service as part of Amazon Web Services. The new Amazon Simple Workflow Service (SWF) is designed to meet the needs of web applications that involve multiple components working in concordance.
Today web applications need to be incredibly scalable to meet the demands of the internet’s populace. This means multiple servers which need to be load-balanced serving the same site; or in many cases running other differing tasks of different complexities and running times, all in parallel. All of these need to be able to communicate with each other and stay in sync. On a site such as YouTube for example, when someone uploads a video, it will likely be sent to another server where the video will be converted into the different formats and resolutions it needs to be in (FLV, H.264, WebM), and yet another will likely host the videos themselves.
SWF aims to remove the need for application developers to create and maintain all the ‘plumbing’ that ensures messages are passed between different components and everything is in sync. The service is for coordinating the different components of an application. It boasts of the following capabilities:
- Maintaining application state
- Tracking workflow executions and logging their progress
- Holding and dispatching tasks
- Controlling which tasks each of your application hosts will be assigned to execute
As with other Amazon services, the pricing is based on actual usage, with the following costs:
- Starting a workflow execution: $0.0001 per workflow execution
- For ever 24-hour period a workflow execution takes after the first day: $0.000005
- For every completed workflow execution that is stored: $0.000005
- For every task / marker / timer / signal: $0.000025
- Data transfer: $0.120 per GB (and lower for higher transfer brackets)
There is a free usage tier of 1000 workflow executions, 10000 tasks and 30000 workflow-days per month.