7. The serverless compute manifesto
Functions are the unit of deployment and scaling.
No machines, VMs, or containers visible in the programming model.
Permanent storage lives elsewhere.
Scales per request. Users cannot over- or under-provision capacity.
Never pay for idle (no cold servers/containers or their costs).
Implicitly fault-tolerant because functions can run anywhere.
BYOC – Bring your own code.
Metrics and logging are a universal right.
13. “I want to sequence functions”
“I want to select functions based on data”
“I want to retry functions”
“I want try/catch/finally”
Functions into apps
“I have code that runs for hours”
“I want to run functions in parallel”
14. Twelve-factor processes are stateless and share-nothing. Any data that needs to
persist must be stored in a stateful backing service, typically a database.
28. “I want to sequence functions”
AWS Step Functions, we can easily change and iterate on
the application workflow of our food delivery service in
order to optimize operations and continually improve
delivery times. AWS Step Functions lets us dynamically
scale the steps in our food delivery algorithm so we can
manage spikes in customer orders and meet demand.
Mathias Nitzsche, CTO, foodpanda
“
29.
30. “I want to select functions based on data”
With AWS Step Functions, it was easy to build a multi-step product
updating system to ensure our database and website always have
the latest price and availability information.
AWS Step Functions let us replace a manual updating process with
an automated series of steps, including built-in retry conditions and
error handling, so we can reliably scale before a big show, and keep
pace with rapidly changing fashions.
Jared Browarnik, CTO, TheTake
“
31.
32. “I want to retry functions”
We get transient errors from a RESTful
service we depend on, once every four
or five times we call it. But if we keep
retrying, it eventually works.
“
34. “I want to run functions in parallel”
We want to send the captured image to
three OCR providers and take the result
with the highest confidence value.“
35.
36. “I want try/catch/finally”
AWS Step Functions makes it simple to coordinate information
from many different infrastructure systems using easy to design
workflows and create a more intelligent monitoring system for our
Platform as a Service (PaaS).
With AWS Step Functions, we can reliably automate monitoring
decisions and actions in order to reduce human intervention by
over 60%, which improves infrastructure operation productivity and
customer application availability on our platform.
Pedro Pimenta, VP R&D, OutSystems
“
37. 13 AWS Lambda Task States
6 Choice States
1 Fail State
“I want try/catch/finally”
41. “I want to sequence functions”
“I want to select functions based on data”
“I want to retry functions”
“I want try/catch/finally”
Is this you?
“I have code that runs for hours”
“I want to run functions in parallel”