harper reed: cloud contraints

31
Cloud Constraints Harper Reed [email protected] @harper

Upload: socialdevcamp-chicago

Post on 12-May-2015

545 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Harper Reed: Cloud Contraints

Cloud ConstraintsHarper Reed

[email protected]@harper

Page 2: Harper Reed: Cloud Contraints

Hi!

Page 3: Harper Reed: Cloud Contraints

I build a lot of applications.

Page 4: Harper Reed: Cloud Contraints

BIG

Page 5: Harper Reed: Cloud Contraints

SMALL (ish)supertrackr

fukung.net

Page 6: Harper Reed: Cloud Contraints
Page 7: Harper Reed: Cloud Contraints

Cloud Computing is Awesome

Page 8: Harper Reed: Cloud Contraints
Page 9: Harper Reed: Cloud Contraints

Cloud computing has a lot of constraints

ArchitectureDevelopmentDeployment

Page 10: Harper Reed: Cloud Contraints

Architecture

You never know if a resource may disappear/fail.

Examples:EC2 InstancesCloud Server Resources

Page 11: Harper Reed: Cloud Contraints

Development

The languages and supported technologies may be limited

Examples: App Engine: python/javaHeroku: ruby

Page 12: Harper Reed: Cloud Contraints

Deployment

Old style simple deployment is gone.

Examples:App engine deploy toolsEC2 Tool chainHeroku tool chain

Page 13: Harper Reed: Cloud Contraints

Google App Engine

Page 14: Harper Reed: Cloud Contraints

Google App Engine

A platform for developing and hosting web applications in Google-managed data centers.

Page 15: Harper Reed: Cloud Contraints

App Engine

Time per request: 30 secBlobstore size: 2 GBHTTP response size: 10 MBDatastore item size: 1 MBApplication code size: 150 MB

Page 16: Harper Reed: Cloud Contraints

Time per request

Limit the time allowed per request

Page 17: Harper Reed: Cloud Contraints

Query Constraints

App Engine used to only return resultsets with 1000 results.

Page 18: Harper Reed: Cloud Contraints

Datastore

Often PaaS providers limit the type and kind of queries you can do over a datastore.

Joins are not your friend

Page 19: Harper Reed: Cloud Contraints

Port 80

You can only serve and make requests on port 80.

Page 20: Harper Reed: Cloud Contraints

Misc tools/apis

QueueSearchMap ReduceDatastoreEmail

see: http://addons.heroku.com/

Page 21: Harper Reed: Cloud Contraints

Servers

EC2 and Rackspace Cloud

Page 22: Harper Reed: Cloud Contraints

Servers offer a lot of freedom. They are also a pain in the ass (don't trust them).

Page 23: Harper Reed: Cloud Contraints

Architecture

Architecting server infrastructures in clouded environments is MUCH different than the old fashioned big iron way.

see: elastic scaling, IaaS vs PaaS

Page 24: Harper Reed: Cloud Contraints

Cloud Server Constraints

Less constraints than PaaS providers. Often emulates a real server.

see: rackspace cloud

Page 25: Harper Reed: Cloud Contraints

Some real constaints

Transient serversArchitect for failureDeployment

Page 26: Harper Reed: Cloud Contraints

Transient servers

Your servers may/will disappear. You need to build that assumption into your infrastructure.

Page 27: Harper Reed: Cloud Contraints

Architect for failure

When you don't control the resource and hardware - you will experience failures.

Build around the potential for failure.

Page 28: Harper Reed: Cloud Contraints

Deployment

The nature of cloud servers let's you pop up 100s or 1000s of boxes. This is a nightmare to manage without awesome tools like puppet, chef, etc.

Page 29: Harper Reed: Cloud Contraints

The Magic

Page 30: Harper Reed: Cloud Contraints

Work within these constraints even when you don't have them

Your apps will be better.They will respond better.They will be more efficient.

Your users will be happier

Page 31: Harper Reed: Cloud Contraints

Questions

@harperharperreed.org

[email protected]

?