CleverToday
Serverless Architecture
CleverToday
CleverToday
Cloud Computing -
Reminders
CleverToday
What is the Cloud?
“Cloud computing is on-demand access to virtualized IT
resources that are housed outside of your own data
center, shared by others, simple to use, paid for via
subscription, and accessed over the Web.”
- John Foley, Information Week IaaS
CleverToday
What is the Cloud?
“Cloud computing is on-demand access to virtualized IT
resources that are housed outside of your own data
center, shared by others, simple to use, paid for via
subscription, and accessed over the Web.”
- John Foley, Information Week IaaS
CleverToday
Different types of Cloud
CleverToday
Serverless
CleverToday
Hot topic
CleverToday
What is Serverless?
• Two different but overlapping areas:
• Backend as a Service (BaaS)
• Function as a Service (FaaS)
CleverToday
Backend as a Service
• 3rd party applications / services in the cloud to manage
server-side logic and state
• Application using them were the first called Serverless
• Rich client applications (SPA or mobile apps)
CleverToday
(Mobile) Backend as a Service: Example
CleverToday
Backend as a Service: Example
CleverToday
Functions as a Service
• Server-side logic written by the application developer
• Run in stateless compute containers
• Event-triggered
• Ephemeral (one or more invocation)
• Fully managed by a 3rd party
CleverToday
Functions as a Service: Example
https://aws.amazon.com/lambda/
CleverToday
Functions as a Service: Example
https://aws.amazon.com/lambda/
CleverToday
Functions as a Service: Example
https://aws.amazon.com/lambda/
CleverToday
Language and Framework agnostic
CleverToday
FaaS vs PaaS
CleverToday
FaaS vs PaaS
CleverToday
FaaS pricing
AWS Lambda Google Functions Azure Functions
Requests $0.20 / million requests $0.40 / million requests $0.20 / million requests
Duration $0.00001667 / GB-second
$0.0000025 / GB-second
$0.0000100 / GHz-second
$0.000016 / GB-second
Free Tier
1 million requests / month
400,000 GB-s / month
2 million requests / month
400,000 GB-s / month
200,000 GHz-s / month
1 million requests / month
400,000 GB-s / month
CleverToday
Traditional 3-tier client-oriented
architecture
Client
(Browser) PetStore
Server
Database
CleverToday
Traditional 3-tier client-oriented
architecture
Client
(Browser)
PetStore
Server
Database
CleverToday
Serverless Architecture
API Gateway
Purchase Function
Search Function
Client
(Browser)
Authorization Service
(Auth0)
Product Database
(Firebase)
Purchase Database
(Fauna)
CleverToday
#NoOps?
• Serverless might mean ‘No internal Sys Admin’
• But ops are still recommended for:
• Monitoring
• Deployments
• Security
• And everything they never have time to focus on :-)
CleverToday
Benefits
CleverToday
Reduced operational cost
• Economy of scale
• BaaS:
• Less development
• Less infrastructure
• Less ops
• FaaS:
• Only pay for the compute that you need!
CleverToday
Easier Operational Management
• Scaling benefits
• Reduced packaging and deployment complexity
• Time to market / experimentation
CleverToday
Drawbacks
CleverToday
The inherent ones
• Vendor control
• Multitenancy problems
• Vendor lock-in
• Security concerns
• FaaS are stateless
CleverToday
The implementation ones
• Execution duration
• Testing
• Monitoring / Debugging
• Lack of tools and experience
CleverToday
Serverless Framework
• Command-line tool providing:
• Scaffolding
• Workflow automation
• Plugin system
• Easy deployment to most of the FaaS services
CleverToday
Conclusion
CleverToday
Conclusion
• Serverless systems are still in their infancy
• Push a better thinking of the architecture
• Micro-services!
• Reduce time-to-market
• Ready for production?
• Apache OpenWhisk (by IBM)!
CleverToday
Thank you!

Serverless - Lunch&Learn CleverToday - Mars 2017