There are myths spreading around the term "serverless". My job in this presentation is to help you understand what the term really means and what it’s not.
5. What “serverless” is
A checklist
1. Does not a require a server
2. Ability to execute arbitrary logic
3. Ability to run large-scale applications
4. Pay only for when you use it
7. The serverless
manifesto
1. Functions are the unit of deployment and scaling
2. No machines, VMs, or containers visible in the programming model
3. Permanent storage lives elsewhere
4. Scales per request. Users cannot over- or under-provision capacity
5. Never pay for idle
6. Implicitly fault tolerant
7. BYOC: bring your own code
8. Metrics and logging are a universal right
15. Auth0’s Webtask
Sort-of serverless
Problems with WebTask:
1. Soft-limit of 1 request per second: it doesn’t scale
2. The service is meant “for hobbyists”, not for something serious and
large scale.
3. They have unclear pricing. Their pricing page talks about everything
except pricing.
4. Nobody uses Webtask
20. Red flags
- Deploy it “on-premises”. How can it be serverless if you need to have servers to
begin with?
- Presence of “installation steps”. Having to install something completely misses
the point of serverless.
If their description contains phrases
like these:
28. Serverless
enablers
They have the following capabilities:
1. Cloud logic layer: Lambda with API Gateway
2. Responsive data sources: DynamoDB which are their NoSQL offering
3. Orchestration and state management: Step-functions which allows for
long-running serverless designed in a workflow.
4. Application modelling framework: Framework like the Serverless Application
Model (SAM)
5. Developer ecosystem: Innovation happening from AWS but also partners. For
AWS: CodePipeline, CodeBuild and CloudFormation for CI/CD. Also X-Ray is now
available to debug and get insights in your serverless functions.
6. Integrations library: sell APIs on the AWS marketplace.
7. Security and access control: integration with IAM
8. Reliability and performance: support for Dead-letter queues for events that
weren’t processed even after retries.
9. Global scale: where you can run Lambda functions on AWS’s global CloudFront
network.
30. Serverless
definition checklist
Does it satisfy the following?
1. Does not a require a server
2. Ability to execute arbitrary logic
3. Ability to run large-scale applications
4. Pay only when you use it
Any service out there that doesn’t satisfy all of the above
are not serverless.
31. If you want the written
guide, incl. links:
https://www.lambdatv.com/Let's-set-the-record-straight-on-the-term-serv
erless-and-what-it-s-not