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
220
2
Share
Enabling continuous delivery for your webapp
An experience report from various client gigs while enabling CD
Ranjib Dey
April 18, 2012
More Decks by Ranjib Dey
See All by Ranjib Dey
Consul @ PagerDuty
ranjibd
1
230
Extending CI/CD in Operations Using Chef & LXC
ranjibd
1
380
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
400
Attaining Resiliency - Culture , Tools and Practices
ranjibd
2
1.3k
Automated Infrastructure Testing
ranjibd
0
240
Other Decks in Programming
See All in Programming
エラー処理の温故知新 / history of error handling technic
ryotanakaya
4
660
AIエージェントで業務改善してみた
taku271
0
540
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
1k
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
650
Angular Signal Forms
debug_mode
0
120
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
190
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
410
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
150
AWSコミュニティ活動は顧客のクラウド推進に効くのか / Do AWS community activities help customers adopt the cloud?
seike460
PRO
0
150
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
180
Programming with a DJ Controller — not vibe coding
m_seki
3
150
CDK Deployのための ”反響定位”
watany
5
820
Featured
See All Featured
Design in an AI World
tapps
1
200
Navigating Team Friction
lara
192
16k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
The SEO identity crisis: Don't let AI make you average
varn
0
450
We Are The Robots
honzajavorek
0
220
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
520
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Designing for Performance
lara
611
70k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
How STYLIGHT went responsive
nonsquared
100
6.1k
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