Page topics
Overview
Open allAmazon Step Functions helps with any computational problem or business process that can be subdivided into a series of steps. It’s also useful for creating end-to-end workflows to manage jobs with interdependencies. Common use cases include:
Data processing: consolidate data from multiple databases into unified reports, refine and reduce large data sets into useful formats, or coordinate multi-step analytics and machine learning workflows
DevOps and IT automation: build tools for continuous integration and continuous deployment, or create event-driven applications that automatically respond to changes in infrastructure
E-commerce: automate mission-critical business processes, such as order fulfillment and inventory tracking
Web applications: implement robust user registration processes and sign-on authentication
For more details, explore Amazon Step Functions use cases .
You can configure your state machines to perform work by using activity tasks and service tasks. Activity tasks let you assign a specific step in your workflow to code running somewhere else (known as an activity worker). An activity worker can be any application that can make an HTTP connection, hosted anywhere. For example, activity workers can run on an Amazon EC2 instance, on a mobile device, or on an on-premises server. The activity worker polls Step Functions for work, takes any inputs from Step Functions, performs the work using your code, and returns results. Since activity workers request work, it is easy to use workers that are deployed behind a firewall.
Service tasks let you connect a step in your workflow to a supported Amazon Web Services service. Step Functions pushes requests to other services so they can perform actions for your workflow, waits for the service task to complete, and then continues to the next step.
An Amazon Step Functions state machine can contain combinations of activity tasks and service tasks. Amazon Step Functions applications can also combine activity workers running in a data center with service tasks that run in the cloud. The workers in the data center continue to run as usual, along with any cloud-based service tasks.
There are a number of ways you can get started with Amazon Step Functions:
Explore sample projects in the Step Functions console
Read through the Amazon Step Functions Developer Guide
Comparisons
Open allIntegration
Open allWorkflows that you create with Amazon Step Functions can connect and coordinate other Amazon web services services using service tasks. For example, you can:
Invoke an Amazon Lambda function
Run an Amazon Elastic Container Service or Amazon Fargate task
Get an existing item from an Amazon DynamoDB table or put a new item into a DynamoDB table
Submit an Amazon Web Services Batch job and wait for it to complete
Publish a message to an Amazon SNS topic
Send a message to an Amazon SQS queue
Start an Amazon Glue job run
Create an Amazon SageMaker job to train a machine learning model or batch transform a data set
To learn more about using Step Functions to connect to other Amazon Web Services services, see the Amazon Step Functions Developer Guide. You can also create tasks in your state machines that run applications, see the FAQ in the Overview section, How does Amazon Step Functions connect to my resources?
Security
Open allStep Functions also supports VPC Endpoints (VPCE) using Amazon PrivateLink. You can access Step Functions from VPC-enabled Amazon Lambda functions and other Amazon Web Services services without traversing the public internet. For more information, refer the Amazon Virtual Private Cloud Endpoints for Amazon Step Functions in the Amazon Step Functions Developer Guide.
Get started with Amazon Step Functions
Visit the getting started page
Ready to get started?
Sign in to the Amazon Step Functions console
Have more questions?