Confusion In The Land Of The Serverless

Sam Newman
Sam NewmanIndependent Consultant at Sam Newman & Associates
Confusion in the land
of the serverless
NDC Oslo 2017
Sam Newman
@samnewman#ndcoslo
Sam Newman
Building
Microservices
DESIGNING FINE-GRAINED SYSTEMS
@samnewman#ndcoslo
Sam Newman &
Associates
@samnewman#ndcoslo
Sam Newman &
Associates
(there are no associates)
@samnewman#ndcoslo
https://www.flickr.com/photos/maf04/31928696816/
@samnewman#ndcoslo https://www.flickr.com/photos/30478819@N08/32663448876/
@samnewman#ndcoslo
@samnewman#ndcoslo
https://www.flickr.com/photos/joshuamckenty/2297179486/
@samnewman#ndcoslo
@samnewman#ndcoslo
https://www.flickr.com/photos/143601516@N03/28346073830/
@samnewman#ndcoslo
Confusion In The Land Of The Serverless
@samnewman#ndcoslo
#serverless
@samnewman#ndcoslo
Confusion In The Land Of The Serverless
@samnewman#ndcoslo
http://readwrite.com/2012/10/15/why-the-future-of-software-and-apps-is-serverless/
@samnewman#ndcoslo
http://readwrite.com/2012/10/15/why-the-future-of-software-and-apps-is-serverless/
The phrase “serverless” doesn’t mean servers are no longer
involved. It simply means that developers no longer have to
think that much about them. Computing resources get used as
services without having to manage around physical capacities
or limits.
@samnewman#ndcoslo
lambda launched
in 2014
@samnewman#ndcoslo
Platform
@samnewman#ndcoslo
Platform
WOW!
@samnewman#ndcoslo
Platform
Yay, serverless!
WOW!
@samnewman#ndcoslo
Platform
Yay, serverless!
So abstract
WOW!
@samnewman#ndcoslo
Platform
Yay, serverless!
So abstract
Much PAYG
WOW!
@samnewman#ndcoslo
Server Server Server Server
Platform
Yay, serverless!
So abstract
Much PAYG
WOW!
@samnewman#ndcoslo
Server Server Server Server
Platform
Yay, serverless!
So abstract
Much PAYG
WOW!
Wat?
@samnewman#ndcoslo
@samnewman#ndcoslo
https://martinfowler.com/articles/serverless.html
@samnewman#ndcoslo
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
1. No management of server hosts or
server processes
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
1. No management of server hosts or
server processes
2. Self auto-scale and auto-provision based
on load
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
1. No management of server hosts or
server processes
2. Self auto-scale and auto-provision based
on load
3. Costs based on precise usage
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
1. No management of server hosts or
server processes
2. Self auto-scale and auto-provision based
on load
3. Costs based on precise usage
4. Performance capabilities defined in terms
other than host size/count
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
1. No management of server hosts or
server processes
2. Self auto-scale and auto-provision based
on load
3. Costs based on precise usage
4. Performance capabilities defined in terms
other than host size/count
5. Implicit high availability
Mike Roberts’ Definition Of
Serverless
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
FAAS
@samnewman#ndcoslo
FAAS
@samnewman#ndcoslo
FAAS BAAS
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
IAAS
@samnewman#ndcoslo
IAAS
CAAS
@samnewman#ndcoslo
IAAS
CAAS
PAAS
@samnewman#ndcoslo
IAAS
CAAS
FAAS
PAAS BAAS
@samnewman#ndcoslo
IAAS
CAAS
FAAS
PAAS BAAS
Serverless?
@samnewman#ndcoslo
IAAS
CAAS
FAAS
PAAS BAAS
Serverless?
@samnewman#ndcoslo
IAAS
CAAS
FAAS
PAAS BAAS
Serverless?
@samnewman#ndcoslo
BASS?BASS?
@samnewman#ndcoslo
*AAS
@samnewman#ndcoslo
https://twitter.com/kelseyhightower/status/856272003963039744
@samnewman#ndcoslo
http://readwrite.com/2012/10/15/why-the-future-of-software-and-apps-is-serverless/
The phrase “serverless” doesn’t mean
servers are no longer involved. It simply
means that developers no longer have
to think that much about them.
@samnewman#ndcoslo
Undifferentiated Heavy Lifting
@samnewman#ndcoslo https://www.flickr.com/photos/ibm_media/33838065805/
@samnewman#ndcoslo
Resiliency
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
Risk
@samnewman#ndcoslo
Risk
Market
Data
@samnewman#ndcoslo
Risk
Market
Data
DB
@samnewman#ndcoslo
@samnewman#ndcoslo
https://www.flickr.com/photos/dennissylvesterhurd/4722435652/
@samnewman#ndcoslo
Risk
Market
Data
DB
@samnewman#ndcoslo
Risk
Market
Data
DB
@samnewman#ndcoslo
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
DB
Connection Pool
@samnewman#ndcoslo
DB
Connection Pool
@samnewman#ndcoslo
DB
Connection Pool
@samnewman#ndcoslo
DB
Connection Pool
Connection pools
throttle load
@samnewman#ndcoslo
DB
Connection Pool
Connection pools
throttle load
And allow for
load shedding
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
DB
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
But what about
hybrid apps?
@samnewman#ndcoslo https://www.flickr.com/photos/vax-o-matic/2545657717/
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Circuit Breaker
@samnewman#ndcoslo
Circuit breakers rely on
maintaining per-client
state across requests
Risk
Circuit Breaker
@samnewman#ndcoslo
Risk
Market
Data
@samnewman#ndcoslo
Risk
Market
Data
Throttling & Load shedding middleware?
@samnewman#ndcoslo
@samnewman#ndcoslo
Security
@samnewman#ndcoslo
@samnewman#ndcoslo
Friends don’t let
friends run
untrusted code in
containers
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
@samnewman#ndcoslo
If your function isn’t
running, it’s not there…
@samnewman#ndcoslo
If your function isn’t
running, it’s not there…
…and you’re running in
a sandbox anyway
@samnewman#ndcoslo
Lock-in?
@samnewman#ndcoslo https://www.flickr.com/photos/fallsroad/14244241233/
@samnewman#ndcoslo
@samnewman#ndcoslo
Don’t think lock-in,
think migration cost
@samnewman#ndcoslo
Cost of migration
@samnewman#ndcoslo
Cost of migration
@samnewman#ndcoslo
Cost of migration
Blob storage
@samnewman#ndcoslo
Cost of migration
Compute
Blob storage
@samnewman#ndcoslo
Cost of migration
Compute
Blob storage
Load
balancers
@samnewman#ndcoslo
Cost of migration
Compute
Blob storage
Load
balancers
FAAS
@samnewman#ndcoslo
Cost of migration
Compute
Blob storage
Load
balancers
FAAS
BAAS
@samnewman#ndcoslo
Pay now or pay later
@samnewman#ndcoslo
Mixing vendors?
@samnewman#ndcoslo
@samnewman#ndcoslo https://www.flickr.com/photos/reavel/2496345250/
@samnewman#ndcoslo
Agile
@samnewman#ndcoslo
DevOps
Agile
@samnewman#ndcoslo
Microservices
DevOps
Agile
@samnewman#ndcoslo
I can’t use that, it’s
not #serverless!
@samnewman#ndcoslo
https://twitter.com/puppetmasterd/status/647423207654363136
@samnewman#ndcoslo
http://samnewman.io
@samnewman
Thank You!
1 of 126

Recommended

It's a trap! by
It's a trap!It's a trap!
It's a trap!Sam Newman
3K views113 slides
AppSec and Microservices by
AppSec and MicroservicesAppSec and Microservices
AppSec and MicroservicesSam Newman
546 views99 slides
Hiding The Lead: Coupling, cohesion and microservices by
Hiding The Lead: Coupling, cohesion and microservicesHiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesSam Newman
705 views114 slides
AppSec And Microservices by
AppSec And MicroservicesAppSec And Microservices
AppSec And MicroservicesSam Newman
4.4K views84 slides
Practical microservices - NDC 2014 by
Practical microservices  - NDC 2014Practical microservices  - NDC 2014
Practical microservices - NDC 2014Sam Newman
5.7K views179 slides
Principles of microservices XP Days Ukraine by
Principles of microservices   XP Days UkrainePrinciples of microservices   XP Days Ukraine
Principles of microservices XP Days UkraineSam Newman
9.4K views110 slides

More Related Content

What's hot

Practical microservices - javazone 2014 by
Practical microservices -  javazone 2014Practical microservices -  javazone 2014
Practical microservices - javazone 2014Sam Newman
2.7K views179 slides
What Is This Cloud Native Thing Anyway? by
What Is This Cloud Native Thing Anyway?What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?Sam Newman
3.7K views118 slides
Principles of Microservices - NDC 2014 by
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014Sam Newman
58.2K views115 slides
Feature Branches And Toggles In A Post-GitHub World by
Feature Branches And Toggles In A Post-GitHub WorldFeature Branches And Toggles In A Post-GitHub World
Feature Branches And Toggles In A Post-GitHub WorldSam Newman
1.2K views142 slides
Testing & deploying microservices - XP Days Ukraine 2014 by
Testing & deploying microservices  - XP Days Ukraine 2014Testing & deploying microservices  - XP Days Ukraine 2014
Testing & deploying microservices - XP Days Ukraine 2014Sam Newman
1.6K views143 slides
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum... by
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...HostedbyConfluent
1.5K views129 slides

What's hot(11)

Practical microservices - javazone 2014 by Sam Newman
Practical microservices -  javazone 2014Practical microservices -  javazone 2014
Practical microservices - javazone 2014
Sam Newman2.7K views
What Is This Cloud Native Thing Anyway? by Sam Newman
What Is This Cloud Native Thing Anyway?What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?
Sam Newman3.7K views
Principles of Microservices - NDC 2014 by Sam Newman
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014
Sam Newman58.2K views
Feature Branches And Toggles In A Post-GitHub World by Sam Newman
Feature Branches And Toggles In A Post-GitHub WorldFeature Branches And Toggles In A Post-GitHub World
Feature Branches And Toggles In A Post-GitHub World
Sam Newman1.2K views
Testing & deploying microservices - XP Days Ukraine 2014 by Sam Newman
Testing & deploying microservices  - XP Days Ukraine 2014Testing & deploying microservices  - XP Days Ukraine 2014
Testing & deploying microservices - XP Days Ukraine 2014
Sam Newman1.6K views
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum... by HostedbyConfluent
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
HostedbyConfluent1.5K views
Optimizing the Blog Volcano by Brian Massey
Optimizing the Blog VolcanoOptimizing the Blog Volcano
Optimizing the Blog Volcano
Brian Massey925 views
Setting AMP for Success at #BrightonSEO by Aleyda Solís
Setting AMP for Success at #BrightonSEOSetting AMP for Success at #BrightonSEO
Setting AMP for Success at #BrightonSEO
Aleyda Solís16.5K views
Instagram photos in your tablet photo frame [Solved] by BEN LLEWELLYN
Instagram photos in your tablet photo frame [Solved]Instagram photos in your tablet photo frame [Solved]
Instagram photos in your tablet photo frame [Solved]
BEN LLEWELLYN84 views
Javascript Event Loop Model by Lior Agami
Javascript Event Loop ModelJavascript Event Loop Model
Javascript Event Loop Model
Lior Agami242 views
Streams on top of Scala - scalar 2015 Warsaw by Quentin Adam
Streams on top of Scala - scalar 2015 WarsawStreams on top of Scala - scalar 2015 Warsaw
Streams on top of Scala - scalar 2015 Warsaw
Quentin Adam2.4K views

More from Sam Newman

AppSec & Microservices - Velocity 2016 by
AppSec & Microservices - Velocity 2016AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016Sam Newman
4.6K views160 slides
Deploying and Scaling Microservices by
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling MicroservicesSam Newman
4.7K views194 slides
BETA - Securing microservices by
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservicesSam Newman
1.6K views80 slides
Principles of microservices ndc oslo by
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc osloSam Newman
8K views114 slides
Principles of microservices velocity by
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocitySam Newman
106.7K views185 slides
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey by
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneyQCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneySam Newman
3K views184 slides

More from Sam Newman(11)

AppSec & Microservices - Velocity 2016 by Sam Newman
AppSec & Microservices - Velocity 2016AppSec & Microservices - Velocity 2016
AppSec & Microservices - Velocity 2016
Sam Newman4.6K views
Deploying and Scaling Microservices by Sam Newman
Deploying and Scaling MicroservicesDeploying and Scaling Microservices
Deploying and Scaling Microservices
Sam Newman4.7K views
BETA - Securing microservices by Sam Newman
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservices
Sam Newman1.6K views
Principles of microservices ndc oslo by Sam Newman
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc oslo
Sam Newman8K views
Principles of microservices velocity by Sam Newman
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocity
Sam Newman106.7K views
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey by Sam Newman
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneyQCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey
Sam Newman3K views
Testing & deploying Microservices GeeCon 2014 by Sam Newman
Testing & deploying Microservices   GeeCon 2014Testing & deploying Microservices   GeeCon 2014
Testing & deploying Microservices GeeCon 2014
Sam Newman7.6K views
Practical microservices - YOW 2013 by Sam Newman
Practical microservices  - YOW 2013Practical microservices  - YOW 2013
Practical microservices - YOW 2013
Sam Newman6.9K views
From macro to micro goto by Sam Newman
From macro to micro   gotoFrom macro to micro   goto
From macro to micro goto
Sam Newman1.5K views
Designing for rapid release goto 2012 by Sam Newman
Designing for rapid release   goto 2012Designing for rapid release   goto 2012
Designing for rapid release goto 2012
Sam Newman1.3K views
Surfing the event stream by Sam Newman
Surfing the event streamSurfing the event stream
Surfing the event stream
Sam Newman2.3K views

Recently uploaded

Introduction to Git Source Control by
Introduction to Git Source ControlIntroduction to Git Source Control
Introduction to Git Source ControlJohn Valentino
6 views18 slides
Navigating container technology for enhanced security by Niklas Saari by
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas SaariMetosin Oy
14 views34 slides
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action by
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionMárton Kodok
15 views55 slides
360 graden fabriek by
360 graden fabriek360 graden fabriek
360 graden fabriekinfo33492
143 views25 slides
Sprint 226 by
Sprint 226Sprint 226
Sprint 226ManageIQ
10 views18 slides
Quality Engineer: A Day in the Life by
Quality Engineer: A Day in the LifeQuality Engineer: A Day in the Life
Quality Engineer: A Day in the LifeJohn Valentino
7 views18 slides

Recently uploaded(20)

Introduction to Git Source Control by John Valentino
Introduction to Git Source ControlIntroduction to Git Source Control
Introduction to Git Source Control
John Valentino6 views
Navigating container technology for enhanced security by Niklas Saari by Metosin Oy
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas Saari
Metosin Oy14 views
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action by Márton Kodok
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
Márton Kodok15 views
360 graden fabriek by info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info33492143 views
Sprint 226 by ManageIQ
Sprint 226Sprint 226
Sprint 226
ManageIQ10 views
Quality Engineer: A Day in the Life by John Valentino
Quality Engineer: A Day in the LifeQuality Engineer: A Day in the Life
Quality Engineer: A Day in the Life
John Valentino7 views
Airline Booking Software by SharmiMehta
Airline Booking SoftwareAirline Booking Software
Airline Booking Software
SharmiMehta7 views
predicting-m3-devopsconMunich-2023.pptx by Tier1 app
predicting-m3-devopsconMunich-2023.pptxpredicting-m3-devopsconMunich-2023.pptx
predicting-m3-devopsconMunich-2023.pptx
Tier1 app7 views
Bootstrapping vs Venture Capital.pptx by Zeljko Svedic
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptx
Zeljko Svedic14 views
Understanding HTML terminology by artembondar5
Understanding HTML terminologyUnderstanding HTML terminology
Understanding HTML terminology
artembondar56 views
JioEngage_Presentation.pptx by admin125455
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptx
admin1254556 views
How Workforce Management Software Empowers SMEs | TraQSuite by TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuiteHow Workforce Management Software Empowers SMEs | TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuite
TraQSuite5 views
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... by Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller41 views
Myths and Facts About Hospice Care: Busting Common Misconceptions by Care Coordinations
Myths and Facts About Hospice Care: Busting Common MisconceptionsMyths and Facts About Hospice Care: Busting Common Misconceptions
Myths and Facts About Hospice Care: Busting Common Misconceptions

Confusion In The Land Of The Serverless