nasa talk- the cloud layer for software developers: an overview of platform-as-a-service (paas)
TRANSCRIPT
![Page 1: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/1.jpg)
The Cloud Layer for Software Developers
by
Lucas Carlsonfor NASA
May 7, 2015
A Brief Overview of Programming for PaaS (Platform-as-a-Service)
![Page 2: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/2.jpg)
Programmer18 Years
Author• Ruby Cookbook
• Programming for PaaS
Entrepreneur• AppFog PaaS
• Mog Music Streaming Service
Current Role• Chief Innovation Officer at
CenturyLink
Who Am I?
![Page 3: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/3.jpg)
Structure
1
Who Am I?2
What’s Wrong
The Developer’s
Plight
3
How the Cloud
Enables Innovation
4
A Brief History of Cloud
for Programmers
5
What is PaaS?
And How to Use It
6
Conclusions
![Page 5: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/5.jpg)
What’s Wrong: The Developer’s Plight
If it ain’t broke, don’t fix it… right?
![Page 6: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/6.jpg)
Scaling Web Applications is Hard
2b
5
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
Jason tried to do it once…
![Page 7: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/7.jpg)
Scaling Web Applications is Hard
Web
Server2b
5
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
2a
BROWSE
R
Started simple…
![Page 8: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/8.jpg)
Scaling Web Applications is Hard
Web
Server2b
5
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
BROWSE
R
And then grew…
![Page 9: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/9.jpg)
Browser
6
Web
Server2b
5
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
Scaling Web Applications is Hard
Limited
Redundancy
Error 500
And broke…
![Page 10: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/10.jpg)
Scaling Web Applications is Hard
Web
Server
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
BROWSE
R
And grew more…
![Page 11: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/11.jpg)
Scaling Web Applications is Hard
Web
Server
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
BROWSE
R
And more…
![Page 12: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/12.jpg)
Scaling Web Applications is Hard
Browser
6
Web
Server
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
Limited
Scale
Error 500
And broke more…
![Page 13: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/13.jpg)
Limited
Scale
Scaling Web Applications is Hard
1
5
Browser
6
Web
Server
5
2b
5
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
2a
Error 500
![Page 14: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/14.jpg)
Scaling Web Applications is Hard
3-Tier
Systems
Scale… Up to a Point
Databases are
limited by disk size and
IO rates
Applications
are limited by RAM and CPU
As they get
more complex,they end up
breaking
![Page 15: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/15.jpg)
Building Web
Applications Yourself
is
![Page 16: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/16.jpg)
How the Cloud
Enables Innovation
![Page 17: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/17.jpg)
What’s the opposite of
fragile?
Hint: It’s not robustness
![Page 18: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/18.jpg)
What’s the opposite of
fragile?
Answer : Antifragile
![Page 19: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/19.jpg)
Anti-fragile
Definition
![Page 20: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/20.jpg)
Examples
Break under
stress
Don’t care about
stress
Grow under
stress
![Page 21: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/21.jpg)
The “Heart of Africa”
![Page 22: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/22.jpg)
Characteristics
Monolithic Decentralized
Tightly coupled Loosely coupled
Heavyweight Lightweight
Complicated Simple
No redundancy Extra redundancy
AgileSluggish
Locked-in Interoperable
![Page 23: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/23.jpg)
Anti-fragile
actively randomly kills
its own servers to
ensure its architectural
anti-fragility
![Page 24: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/24.jpg)
Web Deployment Is Changing
To Managed
Platforms to Run
Your Code For You
From Non-
Standard DIY
![Page 25: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/25.jpg)
Old Model: DIY
Web
Server
Application
Server
AppThena
Web App
Other
Web App
Other
Web App
Other
Web App
53
Database
Server
4
Data
CSS
Images
Pages
BROWSE
R
![Page 26: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/26.jpg)
New Model: PaaS
App App App AppLoad
Balancer
DB DB
BROWSE
R
Worker WorkerLoad
Balancer
PaaS (Platform-as-a-Service) Runs Your Apps For You
![Page 27: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/27.jpg)
Resiliency
App App App AppLoad
Balancer
DB DB
BROWSE
R
Worker WorkerLoad
Balancer
PaaS (Platform-as-a-Service) Runs Your Apps For You
![Page 28: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/28.jpg)
A Brief History of Cloud
For Programmers
![Page 29: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/29.jpg)
In The Beginning There Were Datacenters
Ordering Servers Could Take
Weeks
Maintaining Them Was Up To You
Very Expensive Up Front Costs
![Page 30: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/30.jpg)
And Then There Was IaaS
On-Demand API-Driven Servers
Billed Hourly, No Up Front Cost
Scale Up and Down as You Want
You Still Have to Manage and Run
Your Code on the Servers
![Page 31: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/31.jpg)
And SaaS
Pre-Packaged Hosted Programming Services
Sending bulk email, accepting credit cards, etc.
Write Less Code
![Page 32: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/32.jpg)
PaaS Manages YOUR Code on IaaS Servers
No Longer Manage Operating
Systems
Take Out Operational Headaches
Enable Standardized Best
Practices
![Page 33: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/33.jpg)
What is PaaS? And How to Use It
![Page 34: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/34.jpg)
![Page 35: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/35.jpg)
![Page 36: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/36.jpg)
![Page 37: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/37.jpg)
Automatically Deploys Your Apps
App App App AppLoad
Balancer
DB DB
BROWSE
R
Worker WorkerLoad
Balancer
PaaS (Platform-as-a-Service) Runs Your Apps For You
![Page 38: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/38.jpg)
Portfolio of Cloud Services
EASY
HARD
SaaS
IaaS
PaaS
![Page 39: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/39.jpg)
SaaS and Cloud Managed Services
Errors
Exceptional, Airbrake
Analytics
Statsmix, NewRelic,
Blitz
Other
Zerigo, CloudFlare,
Recurly, Stripe
Mobile
Urban Airship, Pusher,
Realtime.io
Data
ClearDB, Amazon
RDS, Heroku
Postgres, MongoLab
Search
Searify, Websolr, AWS
CloudSearch
Mailgun, Sendgrid,
CloudMailin
Logging
Loggly, Logentries,
Papertrail
Background
Tasks
Iron.io, CloudAMQP
![Page 40: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/40.jpg)
IaaS Providers
IaaS
AWS
Google Compute Engine
Azure
DigitalOcean
Rackspace
CenturyLink Cloud
![Page 41: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/41.jpg)
PaaS Providers
Heroku
AppFog
Cloud Foundry
OpenShift
Google App Engine
Azure
PaaS
![Page 42: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/42.jpg)
Conclusions
![Page 43: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/43.jpg)
Conclusions
1. Scaling Web Applications is Hard
2.
PaaS Does It For You
3.
What Parts of Your Application
Lifecycles Can You Outsource to
Automated Platforms?
1
2
3
![Page 44: NASA Talk- The Cloud Layer for Software Developers: An Overview of Platform-as-a-Service (PaaS)](https://reader030.vdocuments.mx/reader030/viewer/2022032421/55a77c2a1a28abce668b467d/html5/thumbnails/44.jpg)
Thank You!
@cardmagic
LucasCarlson.com