Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Enabling continuous delivery for your webapp
Search
Ranjib Dey
April 18, 2012
Programming
2
190
Enabling continuous delivery for your webapp
An experience report from various client gigs while enabling CD
Ranjib Dey
April 18, 2012
Tweet
Share
More Decks by Ranjib Dey
See All by Ranjib Dey
Consul @ PagerDuty
ranjibd
1
210
Extending CI/CD in Operations Using Chef & LXC
ranjibd
1
370
Adopting Test Driven Development in Operations
ranjibd
4
1.6k
Chef-LXC - Building and deploying custom containers
ranjibd
2
1.7k
How to mock a mocking bird - testing dynamic infrastructure
ranjibd
4
1.3k
A short introduction to LXC
ranjibd
1
380
Attaining Resiliency - Culture , Tools and Practices
ranjibd
2
1.3k
Automated Infrastructure Testing
ranjibd
0
220
Other Decks in Programming
See All in Programming
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
510
Core MIDI を勉強して作曲用の電子ピアノ作ってみた!
hypebeans
0
110
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
140
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
350
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
280
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
6.1k
Register is more than clipboard
satorunooshie
1
480
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
160
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
6
1.2k
チーム開発の “地ならし"
konifar
7
4.8k
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
6k
組織もソフトウェアも難しく考えない、もっとシンプルな考え方で設計する #phpconfuk
o0h
PRO
10
4.4k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Side Projects
sachag
455
43k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
We Have a Design System, Now What?
morganepeng
54
7.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Building Adaptive Systems
keathley
44
2.8k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
Enabling Continuous Delivery for your WebApp Ranjib Dey, ThoughtWorks @RanjibDey
http://ranjib.posterous.com
Can you release your latest green build on demand at
the push of a button while relaxing on the beach in Goa?
Why?
Time to market
Affordable risks
No more work of art
Let business decide
Myths
Upfront design
Legacy code running in production
My stack does not support
My Domain does not require
Principles
Component based architecture
Deployment pipeline
Infrastructure as code
Automate as much as possible
Bring the pain froward
Extend CI
Execution
Automated testing
Feature branching
Branch by abstraction
Team organization
Have customized release strategies
Blue – Green deployments
Canary releases
Dark launching
Mitigating DB issues
Data is persistent
Not all changes can be rolled back
Don’t integrate late
Version control db migration scripts
Embrace DevOps
Adopt a configuration management tool
Test infrastructures with monitoring tools
Virtualization and Cloud helps
Phoenix servers
None
None
Maintaining CD projects
Collaboration is key
None
Enable faster smaller feed back loops
Set up comprehensive dashboard
None
None
None
Churn out cross cutting analytics
Exercise MVP principle at component level
Questions? Suggestion? Violent disagreements?
Thank you