SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Scott Li
Cloud Support Engineer, Amazon Web Services
Orchestrating AWS Lambda with
Step Functions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Modern
Serverless
App
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The Twelve-Factor App
VI. Process
Execute the app as one or more stateless
processes
…Lambda functions should always be
treated as being stateless, despite the
ability to potentially store some
information locally between execution
environment re-use
…. You should always store any stateful
information in a database, cache, or
separate data store via a backing service.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“I want to sequence functions”
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“I want to select functions based on data”
?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“I want to run functions in parallel”
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“I want to retry
functions”
“I want try / catch /
finally”
“I have code that runs for hours”
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Coordination by Function Chaining
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Coordination by Database
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Coordination by Message Queues
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Coordination Must-Haves
Scales Out Does Not Lose
State
Handles
Errors/Timeouts
Easy to Build/Operate Auditable
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Modern
Serverless
App
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Step Functions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
A Step Function is a state machine
Changing to a specified state when reading an input
What is AWS Step Functions?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Application Lifecycle in AWS Step Functions
Define in JSON
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Application Lifecycle in AWS Step Functions
Visualize in the Console
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Application Lifecycle in AWS Step Functions
Monitoring Executions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Seven State Types
Task A single unit of work
Choice Adds branching logic
Parallel Fork and join the data across tasks
Wait Delay for a specified time
Fail Stops an execution and marks it as a failure
Succeed Stops an execution successfully
Pass Passes its input to its output
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Take States: Pull or Push
AWS Lambda
…On-premises
Amazon Elastic Compute Cloud (EC2),
Amazon Elastic Container Service (ECS)
, or… Long poll
Push
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Take States: Dispatch Work
{
"StartAt": "HelloWorld",
"States": {
"HelloWorld": {
"Type": "Task",
"Resource":"arn:aws:lambda:REGION:
ACCOUNT_ID:function:FUNCTION_NAME",
"End": true
}
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Retry Failures of Take States
"HelloWorld": {
"Type": "Task",
…
"Retry": [
{
"ErrorEquals": [”States.TaskFailed"],
"IntervalSeconds": 1,
"MaxAttempts": 3,
"BackoffRate": 2.0
},
… ]
1st retry after: 1 x 2^0 =1 sec
2nd retry after: 1 x 2^1 = 2 sec
3rd retry after: 1 x 2^2 = 4 sec
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Catch Failures of Take States
"HelloWorld": {
"Type": "Task",
… "Catch":[
{
"ErrorEquals": [" States.TaskFailed"],
"Next": "ReservedTypeFallback "
},
{
"ErrorEquals": ["AccountAlreadyExistsException"],
"Next": " CustomErrorFallback"
… ]
{
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Function Error Handling: Python
{
"StartAt": "Create Account",
"States": {
"CreateAccount": {
"Type": "Task",
"Resource": "arn:aws:lambda:us-east-1:123456789012:function:CreateAccount",
"Next": "Send Welcome Email",
"Catch": [
{
"ErrorEquals": ["AccountAlreadyExistsException"],
"Next": "SuggestAccountName"
}
]
},
…
}
def create_account(event, context):
class AccountAlreadyExistsException(Exception):
pass
raise AccountAlreadyExistsException('Account is in use!')
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Input and Output Processing
• State Input
{
"name": "dog",
"metadata":{
"extension": "jpg",
"size": "1mb"
},
"status": "pending",
}
• InputPath
• $ (ALL) / $.metadata
• ResultPath
• $."status" è "status": "finished",
• OutputPath
$ (ALL)
"finished"
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Choice State for Branching Logic
"ChoiceState": {
"Type" : "Choice",
"Choices": [
{
"Variable": "$",
"StringEquals": "FirstState",
"Next": "FirstMatchState"
},
{
"Variable": "$.sequence",
"NumericEquals": 2,
"Next": ”SecondMatchState"
… ]
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Parallel States to Fork and Join Processes
"Parallel": {
"Type": "Parallel",
"Next": "Final State",
"Branches": [
{
"StartAt": "Wait 20s",
"States": {
"Wait 20s": {
"Type": "Wait",
"Seconds": 20,
"End": true
}
... ]
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Wait State For Timed Delay
"wait_using_seconds": {
"Type": "Wait",
"Seconds": 10,
"Next": "wait_using_timestamp"
},
"wait_using_timestamp": {
"Type": "Wait",
"Timestamp": "2018-06-
04T01:59:00Z",
"Next": "wait_using_timestamp_path"
},
…
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Using Templates or Building from Scratch
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Tips
• Don’t try/catch too much at the Lambda level. Use it at Step Functions
• Use Timeouts to avoid stuck executions
• Use ARNs instead of passing large payloads
• Avoid reaching the history limit
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Integrate with Other AWS services
• Create state machines and Activities with
AWS CloudFormation
• Call AWS Step Functions with Amazon APIGateway
• Start state machines in response to events, or on a
schedule, with Amazon CloudWatch Events
• Monitor state machine executions with Amazon CloudWatch
• Log API calls with AWS CloudTrail
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Image Recognition and Processing Backend
Amazon EBS Snapshot Management
Ireland Ohio
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DEMO
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CoCa-Cola Company: Vending Pass Program
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How much?
per thousand
state transitions
Using US East (N. Virginia)
4,000 free
transitions/month
$0.0250
Free tier:
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Pricing Example
Total State Transitions:
3 state transitions per execution x
100,000 executions = 300,000 state transitions
Monthly Charges:
300,000 state transitions x
$0.000025 per state transition = *$7.50 per month
*Using US East (N. Virginia) price,
less free tier adjustment of 4,000 free state transitions per month.
$7.5 – (4000x 0.000025) =
$7.40
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The Benefit of AWS Step Functions
Build Applications Quickly Scale and Recover Reliably Evolve Applications Easily
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

Deploy Alexa for Business in Your Organization & Build Your First Private Ski...
Deploy Alexa for Business in Your Organization & Build Your First Private Ski...Deploy Alexa for Business in Your Organization & Build Your First Private Ski...
Deploy Alexa for Business in Your Organization & Build Your First Private Ski...Amazon Web Services
 
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018Amazon Web Services
 
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018Amazon Web Services
 
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...Amazon Web Services
 
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018Amazon Web Services
 
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018Amazon Web Services
 
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018Amazon Web Services
 
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...Amazon Web Services
 
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)Amazon Web Services
 
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Amazon Web Services
 
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...Amazon Web Services
 
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)
善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)Amazon Web Services
 
AWS 良好架構服務概述 (Level: 200)
AWS 良好架構服務概述 (Level: 200)AWS 良好架構服務概述 (Level: 200)
AWS 良好架構服務概述 (Level: 200)Amazon Web Services
 
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Amazon Web Services
 
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018Amazon Web Services
 
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...Amazon Web Services
 
Building Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLBuilding Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLAmazon Web Services
 
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...Amazon Web Services
 
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...Amazon Web Services
 

Was ist angesagt? (20)

Deploy Alexa for Business in Your Organization & Build Your First Private Ski...
Deploy Alexa for Business in Your Organization & Build Your First Private Ski...Deploy Alexa for Business in Your Organization & Build Your First Private Ski...
Deploy Alexa for Business in Your Organization & Build Your First Private Ski...
 
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018
Serverless Stream Processing Tips & Tricks (ANT358) - AWS re:Invent 2018
 
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018
Foundations of AWS Global Cloud Infrastructure (ARC217) - AWS re:Invent 2018
 
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...
Build, Train, and Deploy ML Models Quickly and Easily with Amazon SageMaker, ...
 
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018
Breaking Up the Monolith While Migrating to AWS (GPSTEC320) - AWS re:Invent 2018
 
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018
From One to Many: Evolving VPC Design (ARC309-R1) - AWS re:Invent 2018
 
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018
AWS IoT Core Workshop (IOT305-R1) - AWS re:Invent 2018
 
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...
How Verizon is Accelerating Cloud Adoption and Migration with the AWS Service...
 
BDA310 Transcribe and Translate
BDA310 Transcribe and TranslateBDA310 Transcribe and Translate
BDA310 Transcribe and Translate
 
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
 
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
 
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...
Shift-Left SRE: Self-Healing with AWS Lambda Functions (DEV313-S) - AWS re:In...
 
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)
善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)
 
AWS 良好架構服務概述 (Level: 200)
AWS 良好架構服務概述 (Level: 200)AWS 良好架構服務概述 (Level: 200)
AWS 良好架構服務概述 (Level: 200)
 
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
 
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018
Get SaaSy with Red Hat OpenShift on AWS (CON305-S) - AWS re:Invent 2018
 
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...
AWS, I Choose You: Pokemon's Battle against the Bots (SEC402-R1) - AWS re:Inv...
 
Building Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLBuilding Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQL
 
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...
How Intuit TurboTax Ran Entirely on AWS for 2017 Taxes (ARC307) - AWS re:Inve...
 
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...
Announcing AWS RoboMaker: A New Cloud Robotics Service (ROB201-R) - AWS re:In...
 

Ähnlich wie 使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)

Design and Implement a Serverless Media-Processing Workflow
Design and Implement a Serverless Media-Processing Workflow Design and Implement a Serverless Media-Processing Workflow
Design and Implement a Serverless Media-Processing Workflow Amazon Web Services
 
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...Amazon Web Services
 
SRV328 Designing and Implementing a Serverless Media-Processing Workflow
SRV328 Designing and Implementing a Serverless Media-Processing WorkflowSRV328 Designing and Implementing a Serverless Media-Processing Workflow
SRV328 Designing and Implementing a Serverless Media-Processing WorkflowAmazon Web Services
 
Coordinating Microservices with AWS Step Functions.pdf
Coordinating Microservices with AWS Step Functions.pdfCoordinating Microservices with AWS Step Functions.pdf
Coordinating Microservices with AWS Step Functions.pdfAmazon Web Services
 
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...Designing and Implementing a Serverless Media Processing Workflow Using AWS S...
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...Amazon Web Services
 
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...Amazon Web Services
 
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...Amazon Web Services
 
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...Amazon Web Services
 
Building Real-time Serverless Backends
Building Real-time Serverless BackendsBuilding Real-time Serverless Backends
Building Real-time Serverless BackendsAmazon Web Services
 
Forza Computazionale e Applicazioni Serverless
Forza Computazionale e Applicazioni ServerlessForza Computazionale e Applicazioni Serverless
Forza Computazionale e Applicazioni ServerlessAmazon Web Services
 
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018Amazon Web Services
 
Developing Serverless Application on AWS
Developing Serverless Application on AWSDeveloping Serverless Application on AWS
Developing Serverless Application on AWSAmazon Web Services
 
Serverless best practices plus design principles 20m version
Serverless   best practices plus design principles 20m versionServerless   best practices plus design principles 20m version
Serverless best practices plus design principles 20m versionHeitor Lessa
 
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...Amazon Web Services
 
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...Gaining Visibility and Insight into Your Distributed Applications with AWS X-...
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...Amazon Web Services
 
AWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAmazon Web Services
 
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverlessKim Kao
 

Ähnlich wie 使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200) (20)

Design and Implement a Serverless Media-Processing Workflow
Design and Implement a Serverless Media-Processing Workflow Design and Implement a Serverless Media-Processing Workflow
Design and Implement a Serverless Media-Processing Workflow
 
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...
Design and Implement a Serverless Media-Processing Workflow - SRV328 - Atlant...
 
SRV328 Designing and Implementing a Serverless Media-Processing Workflow
SRV328 Designing and Implementing a Serverless Media-Processing WorkflowSRV328 Designing and Implementing a Serverless Media-Processing Workflow
SRV328 Designing and Implementing a Serverless Media-Processing Workflow
 
Coordinating Microservices with AWS Step Functions.pdf
Coordinating Microservices with AWS Step Functions.pdfCoordinating Microservices with AWS Step Functions.pdf
Coordinating Microservices with AWS Step Functions.pdf
 
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...Designing and Implementing a Serverless Media Processing Workflow Using AWS S...
Designing and Implementing a Serverless Media Processing Workflow Using AWS S...
 
Serverless for Developers
Serverless for DevelopersServerless for Developers
Serverless for Developers
 
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
 
Taking serverless to the edge
Taking serverless to the edgeTaking serverless to the edge
Taking serverless to the edge
 
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...
Best Practices and Hard Lessons of Serverless- AWS Startup Day Toronto- Diego...
 
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...
AWS18 Startup Day Toronto- The Best Practices and Hard Lessons Learned of Ser...
 
Building Real-time Serverless Backends
Building Real-time Serverless BackendsBuilding Real-time Serverless Backends
Building Real-time Serverless Backends
 
Forza Computazionale e Applicazioni Serverless
Forza Computazionale e Applicazioni ServerlessForza Computazionale e Applicazioni Serverless
Forza Computazionale e Applicazioni Serverless
 
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018
Operations for Containerized Applications (CON334-R1) - AWS re:Invent 2018
 
Developing Serverless Application on AWS
Developing Serverless Application on AWSDeveloping Serverless Application on AWS
Developing Serverless Application on AWS
 
Serverless best practices plus design principles 20m version
Serverless   best practices plus design principles 20m versionServerless   best practices plus design principles 20m version
Serverless best practices plus design principles 20m version
 
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...
Building Massively Parallel Event-Driven Architectures (SRV373-R1) - AWS re:I...
 
Microservices for Startups
Microservices for StartupsMicroservices for Startups
Microservices for Startups
 
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...Gaining Visibility and Insight into Your Distributed Applications with AWS X-...
Gaining Visibility and Insight into Your Distributed Applications with AWS X-...
 
AWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day IsraelAWS Lambda use cases and best practices - Builders Day Israel
AWS Lambda use cases and best practices - Builders Day Israel
 
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
 

Mehr von Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mehr von Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

使用 AWS Step Functions 靈活調度 AWS Lambda (Level:200)

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Scott Li Cloud Support Engineer, Amazon Web Services Orchestrating AWS Lambda with Step Functions
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Modern Serverless App
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The Twelve-Factor App VI. Process Execute the app as one or more stateless processes …Lambda functions should always be treated as being stateless, despite the ability to potentially store some information locally between execution environment re-use …. You should always store any stateful information in a database, cache, or separate data store via a backing service.
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “I want to sequence functions”
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “I want to select functions based on data” ?
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “I want to run functions in parallel”
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “I want to retry functions” “I want try / catch / finally” “I have code that runs for hours”
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Coordination by Function Chaining
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Coordination by Database
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Coordination by Message Queues
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Coordination Must-Haves Scales Out Does Not Lose State Handles Errors/Timeouts Easy to Build/Operate Auditable
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Modern Serverless App
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Step Functions
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. A Step Function is a state machine Changing to a specified state when reading an input What is AWS Step Functions?
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Application Lifecycle in AWS Step Functions Define in JSON
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Application Lifecycle in AWS Step Functions Visualize in the Console
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Application Lifecycle in AWS Step Functions Monitoring Executions
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Seven State Types Task A single unit of work Choice Adds branching logic Parallel Fork and join the data across tasks Wait Delay for a specified time Fail Stops an execution and marks it as a failure Succeed Stops an execution successfully Pass Passes its input to its output
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Take States: Pull or Push AWS Lambda …On-premises Amazon Elastic Compute Cloud (EC2), Amazon Elastic Container Service (ECS) , or… Long poll Push
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Take States: Dispatch Work { "StartAt": "HelloWorld", "States": { "HelloWorld": { "Type": "Task", "Resource":"arn:aws:lambda:REGION: ACCOUNT_ID:function:FUNCTION_NAME", "End": true } } }
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Retry Failures of Take States "HelloWorld": { "Type": "Task", … "Retry": [ { "ErrorEquals": [”States.TaskFailed"], "IntervalSeconds": 1, "MaxAttempts": 3, "BackoffRate": 2.0 }, … ] 1st retry after: 1 x 2^0 =1 sec 2nd retry after: 1 x 2^1 = 2 sec 3rd retry after: 1 x 2^2 = 4 sec
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Catch Failures of Take States "HelloWorld": { "Type": "Task", … "Catch":[ { "ErrorEquals": [" States.TaskFailed"], "Next": "ReservedTypeFallback " }, { "ErrorEquals": ["AccountAlreadyExistsException"], "Next": " CustomErrorFallback" … ] {
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Function Error Handling: Python { "StartAt": "Create Account", "States": { "CreateAccount": { "Type": "Task", "Resource": "arn:aws:lambda:us-east-1:123456789012:function:CreateAccount", "Next": "Send Welcome Email", "Catch": [ { "ErrorEquals": ["AccountAlreadyExistsException"], "Next": "SuggestAccountName" } ] }, … } def create_account(event, context): class AccountAlreadyExistsException(Exception): pass raise AccountAlreadyExistsException('Account is in use!')
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Input and Output Processing • State Input { "name": "dog", "metadata":{ "extension": "jpg", "size": "1mb" }, "status": "pending", } • InputPath • $ (ALL) / $.metadata • ResultPath • $."status" è "status": "finished", • OutputPath $ (ALL) "finished"
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Choice State for Branching Logic "ChoiceState": { "Type" : "Choice", "Choices": [ { "Variable": "$", "StringEquals": "FirstState", "Next": "FirstMatchState" }, { "Variable": "$.sequence", "NumericEquals": 2, "Next": ”SecondMatchState" … ]
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Parallel States to Fork and Join Processes "Parallel": { "Type": "Parallel", "Next": "Final State", "Branches": [ { "StartAt": "Wait 20s", "States": { "Wait 20s": { "Type": "Wait", "Seconds": 20, "End": true } ... ]
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Wait State For Timed Delay "wait_using_seconds": { "Type": "Wait", "Seconds": 10, "Next": "wait_using_timestamp" }, "wait_using_timestamp": { "Type": "Wait", "Timestamp": "2018-06- 04T01:59:00Z", "Next": "wait_using_timestamp_path" }, …
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Using Templates or Building from Scratch
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Tips • Don’t try/catch too much at the Lambda level. Use it at Step Functions • Use Timeouts to avoid stuck executions • Use ARNs instead of passing large payloads • Avoid reaching the history limit
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Integrate with Other AWS services • Create state machines and Activities with AWS CloudFormation • Call AWS Step Functions with Amazon APIGateway • Start state machines in response to events, or on a schedule, with Amazon CloudWatch Events • Monitor state machine executions with Amazon CloudWatch • Log API calls with AWS CloudTrail
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Image Recognition and Processing Backend
  • 32. Amazon EBS Snapshot Management Ireland Ohio
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. DEMO
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. CoCa-Cola Company: Vending Pass Program
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How much? per thousand state transitions Using US East (N. Virginia) 4,000 free transitions/month $0.0250 Free tier:
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pricing Example Total State Transitions: 3 state transitions per execution x 100,000 executions = 300,000 state transitions Monthly Charges: 300,000 state transitions x $0.000025 per state transition = *$7.50 per month *Using US East (N. Virginia) price, less free tier adjustment of 4,000 free state transitions per month. $7.5 – (4000x 0.000025) = $7.40
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The Benefit of AWS Step Functions Build Applications Quickly Scale and Recover Reliably Evolve Applications Easily
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thank you!