Introduction to the Serverless paradigm
-
Upload
alex-casalboni -
Category
Technology
-
view
389 -
download
1
Transcript of Introduction to the Serverless paradigm
Introduc)on to the Serverless Paradigm
cloudacademy.com6/27/2016
clda.co/webinar-serverless
About us
Alex CasalboniSenior So3ware Engineer &
@alex_casalboni
Austen CollinsFounder @ serverless.com
@austencollins
clda.co/webinar-serverless
AWS Community HeroCloud Evangelist @ Cloud Academy
CharacterisHcs of Serverless CompuHng
Zero-‐administra)on
Pay-‐per-‐execu)on
Event-‐driven
Microservice oriented
clda.co/webinar-serverless
Func)on as the unit of scale
Myth #1: #NoServers
There is always a server somewhere,you just don't have to worry about it!
FaaS sounds beDer?
clda.co/webinar-serverless
“there are no servers anymore”
(Func)on as a Service)
Myth #2: #NoOps
You will always need operations. Maybe not a DevOps team anymore. Devs should own their services.
clda.co/webinar-serverless
“opera4ons are not required”
Myth #3: #NoDevs
3rd party APIs are nothing new. Outsourcing makes development faster, but you can always BYOC.
clda.co/webinar-serverless
“you just don’t write any code”
Microservice Principles
Design domain-‐driven services
Always hide implementa)on details
Decentraliza)on is key
Achieve failure isola)on
clda.co/webinar-serverless
Automate and deploy oNen (CD/CI)
AWS Lambda
Transparent scalability, elas)city and availability
Developer-‐friendly opera)ons (versions + aliases)
AWS Lambda
Na)ve integra)ons with (almost) everything in AWS
Event-‐driven approach
Never pay for idle
clda.co/webinar-serverless
AWS Lambda + API Gateway = RESTful
+Amazon API Gateway
AWS Lambda
RESTful layer (JSON/XML)
Auth layer (SSL, API keys, IAM or custom)
Global CDN and caching (via CloudFront)
Logging, throDling & staging for free
Input/output params mapping (VTL)
clda.co/webinar-serverless
AWS Lambda Use Cases (Event Sources)
Amazon S3
clda.co/webinar-serverless
Amazon Kinesis
Amazon DynamoDB AWS CloudTrail
Amazon SNS Amazon SES
AWS CloudForma)on
Amazon Cognito Amazon SWF
AWS IoT AWS CodePipeline Scheduled
AWS Lambda LimitaHons
Cold start issue
Dependencies management
AWS Lambda
Deployment package size & local storage
Max 5 min execu)on
RAM, CPU & Network configura)on
clda.co/webinar-serverless
AWS Lambda RunHme Environments
clda.co/webinar-serverless
Node.js 0.10 Node.js 4.3 (ES6)
Python 2.7Java 8
AWS Lambda OrganizaHonal Pa`erns
clda.co/webinar-serverless
1. Nanoservice Pa`ern
1 func)on = 1 single job
least amount of code possible
easiest to debug
a lot of Lambda func)ons
AWS Lambda OrganizaHonal Pa`erns
clda.co/webinar-serverless
2. Microservice Pa`ern
1 func)on = a few related jobs (e.g. CRUD)
more code than nanoservices
reduced number of func)ons
reduced “cold-‐start” impact
AWS Lambda OrganizaHonal Pa`erns
clda.co/webinar-serverless
3. New Monolithic Pa`ern
only 1 func)on + GraphQL
least amount of API endpoints
async addi)onal business logic
almost no “cold-‐start”
+
The Serverless Ecosystem
AWS Lambda
MicrosoN Azure Func)ons
Google Cloud Func)ons
IBM Bluemix OpenWhisk
hook.io
Cloud Plaaorms FuncHon as a Service
webtask.ioiron.io
Auth0 (SSO)
Misc
Firebase (DB)
weblab.io
Algolia (Search)
Netlify (CDN)
clda.co/webinar-serverless
Serverless.comAusten Collins, Founder
6/27/2016 clda.co/webinar-serverless