Production is a bitch
Upcoming SlideShare
Loading in...5
×
 

Production is a bitch

on

  • 1,933 views

Deploying to production at scale is a royal pain in the arse (but worth it) and these are some of my observations

Deploying to production at scale is a royal pain in the arse (but worth it) and these are some of my observations

Statistics

Views

Total Views
1,933
Views on SlideShare
1,818
Embed Views
115

Actions

Likes
1
Downloads
17
Comments
0

2 Embeds 115

http://www.slideshare.net 114
http://www.mashme.tv 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />

Production is a bitch Production is a bitch Presentation Transcript

  • Production is a Bitch
  • Some deployments got very well and wow we’re awesome and feel great and LETS PARTY!
  • Some deployments go poorly and wreck weekends and make us feel bad and lets drown our sorrows
  • We do both, but we’re learning
  • Troublesome deployments usually fail in two ways
  • Your code doesn’t work* * more on this later
  • Your code doesn’t scale* * also more later
  • Good deployments are usually based on two principles
  • Developed with the right mindset
  • Developed with good technique
  • The mindset is the more important part
  • “She was one in a million, yeah. So there’s five more, just in New South Wales” The Whitlams
  • Always expect the worst and you’ll only get happy surprises
  • Play the averages
  • 24 Hours
  • 332 Error Pages Served
  • 1,690,671 Total Requests
  • 0.019%
  • your code doesn’t work
  • “But it passes QA/CI/ Acceptance/whatever”
  • Continuous Integration is a dress rehearsal
  • “It’s some thing wrong with the framework or linux or ruby or something”
  • You’ve probably just written something retarded
  • ... except when you haven’t and there’s some obscure one in a million MySql bug
  • your code doesn’t scale
  • does it even matter?
  • Average Response Time 139ms
  • Maximum Response Time 87,997ms
  • “using an RDBMS means your design is wrong” Ben Schwarz
  • Bullshit.
  • “crying yourself to sleep every night means your design is wrong”
  • The correct answer to every question relating to maintenance, scalability, reliability, availability is:
  • It depends.
  • ...that being said, there are some very good guidelines and techniques that rarely go wrong
  • Write noisy code Fail loudly and fast
  • and make sure you’re listening
  • Hoptoad Get Exceptional New Relic ExceptionNotifer
  • Write unit tests for production and hook up alerting for failures
  • Measure, then change
  • New Relic is ace.
  • ruby-prof railsbench Benchmark (stdlib) ab
  • Write slow, clean code See what’s slow and how Make that fast
  • http://envato.com http://whoisjohnbarton.com @johnbarton