Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

of

How to ship customer value faster with step functions Slide 1 How to ship customer value faster with step functions Slide 2 How to ship customer value faster with step functions Slide 3 How to ship customer value faster with step functions Slide 4 How to ship customer value faster with step functions Slide 5 How to ship customer value faster with step functions Slide 6 How to ship customer value faster with step functions Slide 7 How to ship customer value faster with step functions Slide 8 How to ship customer value faster with step functions Slide 9 How to ship customer value faster with step functions Slide 10 How to ship customer value faster with step functions Slide 11 How to ship customer value faster with step functions Slide 12 How to ship customer value faster with step functions Slide 13 How to ship customer value faster with step functions Slide 14 How to ship customer value faster with step functions Slide 15 How to ship customer value faster with step functions Slide 16 How to ship customer value faster with step functions Slide 17 How to ship customer value faster with step functions Slide 18 How to ship customer value faster with step functions Slide 19 How to ship customer value faster with step functions Slide 20 How to ship customer value faster with step functions Slide 21 How to ship customer value faster with step functions Slide 22 How to ship customer value faster with step functions Slide 23 How to ship customer value faster with step functions Slide 24 How to ship customer value faster with step functions Slide 25 How to ship customer value faster with step functions Slide 26 How to ship customer value faster with step functions Slide 27 How to ship customer value faster with step functions Slide 28 How to ship customer value faster with step functions Slide 29 How to ship customer value faster with step functions Slide 30 How to ship customer value faster with step functions Slide 31 How to ship customer value faster with step functions Slide 32 How to ship customer value faster with step functions Slide 33 How to ship customer value faster with step functions Slide 34 How to ship customer value faster with step functions Slide 35 How to ship customer value faster with step functions Slide 36 How to ship customer value faster with step functions Slide 37 How to ship customer value faster with step functions Slide 38 How to ship customer value faster with step functions Slide 39 How to ship customer value faster with step functions Slide 40 How to ship customer value faster with step functions Slide 41 How to ship customer value faster with step functions Slide 42 How to ship customer value faster with step functions Slide 43 How to ship customer value faster with step functions Slide 44 How to ship customer value faster with step functions Slide 45 How to ship customer value faster with step functions Slide 46 How to ship customer value faster with step functions Slide 47 How to ship customer value faster with step functions Slide 48 How to ship customer value faster with step functions Slide 49 How to ship customer value faster with step functions Slide 50 How to ship customer value faster with step functions Slide 51 How to ship customer value faster with step functions Slide 52 How to ship customer value faster with step functions Slide 53 How to ship customer value faster with step functions Slide 54 How to ship customer value faster with step functions Slide 55 How to ship customer value faster with step functions Slide 56 How to ship customer value faster with step functions Slide 57 How to ship customer value faster with step functions Slide 58 How to ship customer value faster with step functions Slide 59 How to ship customer value faster with step functions Slide 60 How to ship customer value faster with step functions Slide 61 How to ship customer value faster with step functions Slide 62 How to ship customer value faster with step functions Slide 63 How to ship customer value faster with step functions Slide 64 How to ship customer value faster with step functions Slide 65 How to ship customer value faster with step functions Slide 66 How to ship customer value faster with step functions Slide 67 How to ship customer value faster with step functions Slide 68 How to ship customer value faster with step functions Slide 69 How to ship customer value faster with step functions Slide 70 How to ship customer value faster with step functions Slide 71 How to ship customer value faster with step functions Slide 72 How to ship customer value faster with step functions Slide 73 How to ship customer value faster with step functions Slide 74 How to ship customer value faster with step functions Slide 75 How to ship customer value faster with step functions Slide 76 How to ship customer value faster with step functions Slide 77 How to ship customer value faster with step functions Slide 78 How to ship customer value faster with step functions Slide 79 How to ship customer value faster with step functions Slide 80 How to ship customer value faster with step functions Slide 81 How to ship customer value faster with step functions Slide 82 How to ship customer value faster with step functions Slide 83 How to ship customer value faster with step functions Slide 84 How to ship customer value faster with step functions Slide 85 How to ship customer value faster with step functions Slide 86 How to ship customer value faster with step functions Slide 87 How to ship customer value faster with step functions Slide 88 How to ship customer value faster with step functions Slide 89 How to ship customer value faster with step functions Slide 90 How to ship customer value faster with step functions Slide 91 How to ship customer value faster with step functions Slide 92 How to ship customer value faster with step functions Slide 93 How to ship customer value faster with step functions Slide 94 How to ship customer value faster with step functions Slide 95 How to ship customer value faster with step functions Slide 96 How to ship customer value faster with step functions Slide 97 How to ship customer value faster with step functions Slide 98 How to ship customer value faster with step functions Slide 99 How to ship customer value faster with step functions Slide 100 How to ship customer value faster with step functions Slide 101 How to ship customer value faster with step functions Slide 102 How to ship customer value faster with step functions Slide 103 How to ship customer value faster with step functions Slide 104 How to ship customer value faster with step functions Slide 105 How to ship customer value faster with step functions Slide 106 How to ship customer value faster with step functions Slide 107 How to ship customer value faster with step functions Slide 108 How to ship customer value faster with step functions Slide 109 How to ship customer value faster with step functions Slide 110 How to ship customer value faster with step functions Slide 111 How to ship customer value faster with step functions Slide 112 How to ship customer value faster with step functions Slide 113 How to ship customer value faster with step functions Slide 114 How to ship customer value faster with step functions Slide 115 How to ship customer value faster with step functions Slide 116 How to ship customer value faster with step functions Slide 117 How to ship customer value faster with step functions Slide 118 How to ship customer value faster with step functions Slide 119 How to ship customer value faster with step functions Slide 120 How to ship customer value faster with step functions Slide 121 How to ship customer value faster with step functions Slide 122 How to ship customer value faster with step functions Slide 123 How to ship customer value faster with step functions Slide 124 How to ship customer value faster with step functions Slide 125 How to ship customer value faster with step functions Slide 126 How to ship customer value faster with step functions Slide 127 How to ship customer value faster with step functions Slide 128 How to ship customer value faster with step functions Slide 129 How to ship customer value faster with step functions Slide 130 How to ship customer value faster with step functions Slide 131 How to ship customer value faster with step functions Slide 132 How to ship customer value faster with step functions Slide 133 How to ship customer value faster with step functions Slide 134 How to ship customer value faster with step functions Slide 135 How to ship customer value faster with step functions Slide 136 How to ship customer value faster with step functions Slide 137 How to ship customer value faster with step functions Slide 138 How to ship customer value faster with step functions Slide 139 How to ship customer value faster with step functions Slide 140 How to ship customer value faster with step functions Slide 141 How to ship customer value faster with step functions Slide 142 How to ship customer value faster with step functions Slide 143 How to ship customer value faster with step functions Slide 144 How to ship customer value faster with step functions Slide 145 How to ship customer value faster with step functions Slide 146 How to ship customer value faster with step functions Slide 147 How to ship customer value faster with step functions Slide 148 How to ship customer value faster with step functions Slide 149 How to ship customer value faster with step functions Slide 150 How to ship customer value faster with step functions Slide 151 How to ship customer value faster with step functions Slide 152 How to ship customer value faster with step functions Slide 153 How to ship customer value faster with step functions Slide 154 How to ship customer value faster with step functions Slide 155 How to ship customer value faster with step functions Slide 156 How to ship customer value faster with step functions Slide 157
Upcoming SlideShare
What to Upload to SlideShare
Next
Download to read offline and view in fullscreen.

1 Like

Share

Download to read offline

How to ship customer value faster with step functions

Download to read offline

Learn all about AWS Step Functions and how to use them to model business workflows and ship customer values quickly. In this session, we will talk about what is Step Functions, how to model business workflows as state machines, real-world case studies, and design patterns. By the end of this webinar, you should have a good idea of where Step Functions fit into your application and why you should use them (and why not!) to model workflows instead of building a custom solution yourself.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

How to ship customer value faster with step functions

  1. 1. Deliver customer value FASTER with Step Functions Yan Cui @theburningmonk
  2. 2. What is step functions? How it works? When to use it? Orchestration vs Choreography Real-world case studies Design patterns Agenda
  3. 3. Step Functions
  4. 4. orchestration service that allows you to model workflows as state machines
  5. 5. design with JSON https://states-language.net/spec.html
  6. 6. Step Functions OOP class instance execution input arguments
  7. 7. start a state machine via.. StepFunctions .startExecution(req) .promise()
  8. 8. start a state machine via.. API Gateway StepFunctions .startExecution(req) .promise()
  9. 9. start a state machine via.. EventBridge including cron StepFunctions .startExecution(req) .promise() API Gateway
  10. 10. state transitions
  11. 11. state transitions
  12. 12. $25 PER MILLION
  13. 13. $25 PER MILLION 15X LAMBDA PRICING!
  14. 14. https://aws.amazon.com/about-aws/whats-new/2019/12/introducing-aws-step-functions-express-workflows
  15. 15. Yan Cui http://theburningmonk.com @theburningmonk AWS user for 10 years
  16. 16. http://bit.ly/yubl-serverless
  17. 17. Yan Cui http://theburningmonk.com @theburningmonk Developer Advocate @
  18. 18. Yan Cui http://theburningmonk.com @theburningmonk Independent Consultant advise training development
  19. 19. theburningmonk.com/courses
  20. 20. homeschool.dev
  21. 21. designing state machines
  22. 22. types of states
  23. 23. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Performs a task.
  24. 24. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Performs a task.
  25. 25. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Performs a task.
  26. 26. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Performs a task.
  27. 27. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Defaults to 60s, even if function has longer timeout Performs a task.
  28. 28. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Defaults to 60s, even if function has longer timeout Set this to match your function’s timeout Performs a task.
  29. 29. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Doesn’t have to be Lambda function. Performs a task.
  30. 30. "TaskState": {  "Type": "Task",  "Resource": "arn:aws:lambda:us-east-1:1234556788:function:hello-world",  "Next": "NextState",  "TimeoutSeconds": 300 } Task Doesn’t have to be Lambda function. Performs a task. Activity, AWS Batch, ECS task, DynamoDB, SNS, SQS, AWS Glue, SageMaker
  31. 31. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13 } "choose": { "Type": "Choice", "Choices": [ { "And": [ { "Variable": "$.x", "NumericGreaterThanEquals": 42 }, { "Variable": "$.y", "NumericLessThan": 42 } ], "Next": "subtract" } ], "Default": "add" },
  32. 32. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13 } "subtract": { "Type": "Task", “Resource": "arn:aws:lambda:…", "Next": "double", "ResultPath": "$.n" },
  33. 33. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13 } module.exports.handler = async (input, context) => { return input.x - input.y } $.n
  34. 34. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13, “n”: 29 }
  35. 35. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13, “n”: 29 } "double": { “Type": "Task", “Resource”: ”arn:aws:lambda:...", “InputPath": "$.n", “End": true }
  36. 36. { “x”: 42, “y”: 13 } $ => { “x”: 42, “y”: 13, “n”: 29 } module.exports.handler = async (input, context) => { return input * 2; } $.n $
  37. 37. { “x”: 42, “y”: 13 } $ => 58 "double": { “Type": "Task", “Resource”: ”arn:aws:lambda:...", “InputPath": "$.n", “End": true }
  38. 38. { “x”: 42, “y”: 13 } { “output”: 58 }
  39. 39. "NoOp": {  "Type": "Pass",    "Result": {    "is": 42  },  "ResultPath": "$.the_answer_to_the_question_of_life_the_universe_and_everything",  "Next": "NextState" } Pass Passes input to output without doing any work.
  40. 40. "NoOp": {  "Type": "Pass",    "Result": {    "is": 42  },  "ResultPath": "$.the_answer_to_the_question_of_life_the_universe_and_everything",  "Next": "NextState" } Pass Passes input to output without doing any work.
  41. 41. Pass Passes input to output without doing any work. { } {  “the_answer_to_the_question_of_life_the_universe_and_everything”: {    “is”: 42  } }
  42. 42. "WaitTenSeconds" : {  "Type" : "Wait",  "Seconds" : 10,  "Next": "NextState" } Wait Wait before transitioning to next state. "WaitTenSeconds" : {  "Type" : "Wait", “Timestamp": "2018-08-08T01:59:00Z",   "Next": "NextState" }
  43. 43. "WaitTenSeconds" : {  "Type" : "Wait",  "Seconds" : 10,  "Next": "NextState" } Wait Wait before transitioning to next state. "WaitTenSeconds" : {  "Type" : "Wait", “Timestamp": "2018-08-08T01:59:00Z",   "Next": "NextState" }
  44. 44. "WaitTenSeconds" : {  "Type" : "Wait",  "SecondsPath" : "$.waitTime",  "Next": "NextState" } Wait Wait before transitioning to next state. "WaitTenSeconds" : {  "Type" : "Wait", “TimestampPath": “$.waitUntil”,   "Next": "NextState" }
  45. 45. "ChoiceState": {  "Type" : "Choice",  "Choices": [    {       "Variable": "$.name",      "StringEquals": "Neo"      "Next": "RedPill"    }  ],  "Default": "BluePill" } Choice Adds branching logic to the state machine.
  46. 46. "ChoiceState": {  "Type" : "Choice",  "Choices": [    {       "Variable": "$.name",      "StringEquals": "Neo"      "Next": "RedPill"    }  ],  "Default": "BluePill" } Choice Adds branching logic to the state machine.
  47. 47. "ChoiceState": {  "Type" : "Choice",  "Choices": [    {       "Variable": "$.name",      "StringEquals": "Neo"      "Next": "RedPill"    }  ],  "Default": "BluePill" } Choice Adds branching logic to the state machine.
  48. 48. "ChoiceState": {  "Type" : "Choice",  "Choices": [    {       "Variable": "$.name",      "StringEquals": "Neo"      "Next": "RedPill"    }  ],  "Default": "BluePill" } Choice Adds branching logic to the state machine. { “And”: [ {       "Variable": "$.name",       "StringEquals": “Cypher"     }, {       "Variable": "$.afterNeoIsRescued",       "BooleanEquals": true     }, ],   "Next": "BluePill" }
  49. 49. "FunWithMath": {  "Type": "Parallel",  "Branches": [    {      "StartAt": "Add",      "States": {        "Add": {          "Type": "Task",          "Resource": "arn:aws:lambda:us-east-1:1234556788:function:add",          "End": true        }      }    },    …  ],  "Next": "NextState" } Parallel Performs tasks in parallel.
  50. 50. "FunWithMath": {  "Type": "Map",  "Iterator": [    {      "StartAt": "DoSomething",      "States": {        "Add": {          "Type": "Task",          "Resource": “arn:aws:lambda:us-east-1:1234556788:function:doSomething",          "End": true        }      }    },    …  ],  "Next": "NextState" } Map Dynamic parallelism!
  51. 51. "FunWithMath": {  "Type": "Map",  "Iterator": [    {      "StartAt": "DoSomething",      "States": {        "Add": {          "Type": "Task",          "Resource": "arn:aws:lambda:us-east-1:1234556788:function:doSomething",          "End": true        }      }    },    …  ],  "Next": "NextState" } Map Dynamic parallelism! e.g. [ { … }, { … }, { … } ]
  52. 52. "SuccessState" : {  "Type" : "Succeed" } Succeed Terminates the state machine successfully.
  53. 53. "FailState" : {  "Type" : “Fail", "Error" : "TypeA", "Cause" : "Kaiju Attack", } Fail Terminates the state machine and mark it as failure.
  54. 54. https://aws.amazon.com/about-aws/whats-new/2019/08/aws-step-function-adds-support-for-nested-workflows
  55. 55. WHEN TO USE STEP FUNCTIONS?
  56. 56. $25 PER MILLION 15X LAMBDA PRICING!
  57. 57. another moving part to manage
  58. 58. what’s the return-on-investment?
  59. 59. Pros Cons $$$
  60. 60. https://aws.amazon.com/about-aws/whats-new/2019/12/introducing-aws-step-functions-express-workflows
  61. 61. Pros Cons visual $$$
  62. 62. Great for collaboration with team members who are not engineers
  63. 63. Makes it easy for anyone to identify and debug application errors.
  64. 64. Pros Cons visual $$$ error handling
  65. 65. Makes deciding on timeout setting for Lambda functions easier when you don’t have to consider retry and exponential backoff, etc.
  66. 66. Surfaces error handling for everyone to see, makes it easy for others to see without digging into the code.
  67. 67. Pros Cons visual $$$ error handling audit
  68. 68. Pros Cons visual $$$ error handling audit
  69. 69. business critical workflows what: stuff that makes money, e.g. payment and subscription flows. why: more robust error handling worth the premium.
  70. 70. complex workflows what: complex workflows that involves many states, branching logic, etc. why: visual workflow is a powerful design (for product) and diagnostic tool (for customer support).
  71. 71. long running workflows what: workflows that cannot complete in 15 minutes (Lambda limit). why: AWS discourages recursive Lambda functions, Step Functions gives you explicit branching checks, and can timeout at workflow level.
  72. 72. https://aws.amazon.com/about-aws/whats-new/2019/12/introducing-aws-step-functions-express-workflows
  73. 73. https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html
  74. 74. https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html
  75. 75. https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html
  76. 76. https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html
  77. 77. use Express Workflows for high-throughput, short-lived workflows (OLTP)
  78. 78. Pros Cons visual $$$ error handling audit
  79. 79. Orchestration Choreography
  80. 80. Orchestration Choreography
  81. 81. orchestration within a bounded-context choreography between bounded-contexts Rule of Thumb
  82. 82. bounded context fits within my head high cohesion same ownership
  83. 83. bounded context the workflow doesn’t exist as a standalone concept, but as the sum of a series of loosely connected parts Lambda Lambda Lambda SQS SQS API Gateway
  84. 84. bounded context A bounded context B bounded context C EventBridge SNS
  85. 85. https://lumigo.io/blog/5-reasons-why-you-should-use-eventbridge-instead-of-sns
  86. 86. don’t forget to emit events from the workflow
  87. 87. orchestration within a bounded-context choreography between bounded-contexts Rule of Thumb
  88. 88. Step Functions in the wild
  89. 89. Backend system was slow and had timing issue, so they needed to add a 90s delay before processing payment. Step Functions was the most cost- efficient and scalable way to implement this wait.
  90. 90. Update nutritional info on over 100 brands to comply with FDA regulations. Reduced processing time from 36 hours to 10 seconds.
  91. 91. Transcode video segments in parallel. Reduced processing time from ~20 mins to ~2 mins.
  92. 92. Manages their food delivery experience.
  93. 93. Automates subscription fulfilments with Step Functions.
  94. 94. Automates subscription billing system with Step Functions.
  95. 95. Implements payment processing, and subscription fulfillment systems with Step Functions, and many more.
  96. 96. sagas
  97. 97. managing failures in a distributed transaction
  98. 98. Success path!
  99. 99. Failure paths…
  100. 100. "BookFlight": { "Type": “Task", "Resource": “arn:aws:lambda:…”, "Catch": [ { "ErrorEquals": [ “States.ALL" ], "ResultPath": "$.BookFlightError", "Next": “CancelFlight" } ], "ResultPath": "$.BookFlightResult", "Next": "BookRental" },
  101. 101. "BookFlight": { "Type": “Task", "Resource": “arn:aws:lambda:…”, "Catch": [ { "ErrorEquals": [ “States.ALL" ], "ResultPath": "$.BookFlightError", "Next": “CancelFlight" } ], "ResultPath": "$.BookFlightResult", "Next": "BookRental" },
  102. 102. "BookFlight": { "Type": “Task", "Resource": “arn:aws:lambda:…”, "Catch": [ { "ErrorEquals": [ “States.ALL" ], "ResultPath": "$.BookFlightError", "Next": “CancelFlight" } ], "ResultPath": "$.BookFlightResult", "Next": "BookRental" },
  103. 103. "CancelFlight": { "Type": “Task", "Resource": “arn:aws:lambda:…”, "Catch": [ { "ErrorEquals": [ “States.ALL" ], "ResultPath": "$.CancelFlightError", "Next": “CancelFlight" } ], "ResultPath": "$.CancelFlightResult", "Next": “CancelHotel" },
  104. 104. "CancelFlight": { "Type": “Task", "Resource": “arn:aws:lambda:…”, "Catch": [ { "ErrorEquals": [ “States.ALL" ], "ResultPath": "$.CancelFlightError", "Next": “CancelFlight" } ], "ResultPath": "$.CancelFlightResult", "Next": “CancelHotel" },
  105. 105. https://github.com/theburningmonk/lambda-saga-pattern
  106. 106. callbacks
  107. 107. https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
  108. 108. TaskToken
  109. 109. TaskToken ?
  110. 110. ?
  111. 111. sendTaskSuccess(TaskToken) ?
  112. 112. "Publish SQS message": {  "Type": "Task",  "Resource": "arn:aws:states:::sqs:sendMessage.waitForTaskToken",  "Parameters": {  "QueueUrl": !Ref MyQueue, "MessageBody": { "Token.$": "$$.Task.Token" } },  "Next": "NextState" }
  113. 113. "Publish SQS message": {  "Type": "Task",  "Resource": "arn:aws:states:::sqs:sendMessage.waitForTaskToken",  "Parameters": {  "QueueUrl": !Ref MyQueue, "MessageBody": { "Token.$": "$$.Task.Token" } },  "Next": "NextState" }
  114. 114. "Publish SQS message": {  "Type": "Task",  "Resource": "arn:aws:states:::sqs:sendMessage.waitForTaskToken",  "Parameters": {  "QueueUrl": !Ref MyQueue, "MessageBody": { "Token.$": "$$.Task.Token" } },  "Next": "NextState" }
  115. 115. "Publish SQS message": {  "Type": "Task",  "Resource": "arn:aws:states:::sqs:sendMessage.waitForTaskToken",  "Parameters": {  "QueueUrl": !Ref MyQueue, "MessageBody": { "Token.$": "$$.Task.Token" } },  "Next": "NextState" }
  116. 116. https://docs.aws.amazon.com/step-functions/latest/dg/input-output-contextobject.html
  117. 117. "Publish SQS message": {  "Type": "Task",  "Resource": "arn:aws:states:::sqs:sendMessage.waitForTaskToken",  "Parameters": {  "QueueUrl": !Ref MyQueue, "MessageBody": { "Token.$": "$$.Task.Token", "ExecutionId.$": "$$.Execution.Id", "StateMachineId.$": "$$.StateMachine.Id" } },  "Next": "NextState" }
  118. 118. sendTaskSuccess(TaskToken) ? needs access to Step Functions
  119. 119. HTTP POST ? sendTaskSuccess
  120. 120. https://go.aws/38KynD1
  121. 121. TaskToken
  122. 122. map-reduce
  123. 123. Map
  124. 124. Map …
  125. 125. Map … { … } { … } { … } { … } { … }
  126. 126. Map … { … } { … } { … } { … } { … } [{ … }, { … } … ]
  127. 127. Map … { … } { … } { … } { … } { … } [{ … }, { … } … ] Reduce
  128. 128. https://github.com/awsdocs/aws-step-functions-developer-guide/blob/master/doc_source/limits.md
  129. 129. https://github.com/awsdocs/aws-step-functions-developer-guide/blob/master/doc_source/limits.md use S3 to store large payloads
  130. 130. theburningmonk.com/hire-me Advise Training Delivery “Fundamentally, Yan has improved our team by increasing our ability to derive value from AWS and Lambda in particular.” Nick Blair Tech Lead
  131. 131. productionreadyserverless.com
  132. 132. @theburningmonk theburningmonk.com github.com/theburningmonk
  • AriRantalainen

    Nov. 23, 2021

Learn all about AWS Step Functions and how to use them to model business workflows and ship customer values quickly. In this session, we will talk about what is Step Functions, how to model business workflows as state machines, real-world case studies, and design patterns. By the end of this webinar, you should have a good idea of where Step Functions fit into your application and why you should use them (and why not!) to model workflows instead of building a custom solution yourself.

Views

Total views

505

On Slideshare

0

From embeds

0

Number of embeds

1

Actions

Downloads

1

Shares

0

Comments

0

Likes

1

×