Building Your Apps for Scaling in the Cloud, YO!


Presented by:

Steven Pousty

@TheSteve0 on Twitter, IRC, Ingress, SmugMug, and Github

Agenda

  1. Learn a bit about PaaS
  2. A little scaling

Assumptions

  1. I present some of what and know and we discuss

Scaling - what is web scale?

Two types of scaling

  1. Vertical - bigger, stronger, faster
  2. Horizontal - swarm baby swarm

Why did this take so long?

  • Cheap Commodity "hardware"
  • Ease of creation and deletion
  • Software built to grow sideways

OpenShift Architecture

OpenShift Scaling

Micro Services

Fowler has a page


image from that page

Scaling hints

  • Avoid sessions
  • Loosely couple your pieces
  • Design for retries and small pieces failing
  • Use the architecture of the web for you
  • Caching is your friend

Let's wrap it up

  1. If Cloud then architect from the beginning
  2. These patterns get your more flexibility, resiliance, and capacity
  3. SLAs don't help when your app is down