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
Let's deploy on fridays
Search
Damien Mathieu
November 08, 2016
Programming
0
180
Let's deploy on fridays
Damien Mathieu
November 08, 2016
Tweet
Share
More Decks by Damien Mathieu
See All by Damien Mathieu
The 12Factor App
dmathieu
1
960
Building Resilient Services
dmathieu
0
110
Easily monitor your product data
dmathieu
0
39
Play with ruby threads
dmathieu
2
110
Other Decks in Programming
See All in Programming
Jakarta EE meets AI
ivargrimstad
0
230
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
240
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
190
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
610
Go の GC の不得意な部分を克服したい
taiyow
2
760
CSC509 Lecture 14
javiergs
PRO
0
130
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
330
Full stack testing :: basic to basic
up1
1
930
talk-with-local-llm-with-web-streams-api
kbaba1001
0
170
.NET 9アプリをCGIとして レンタルサーバーで動かす
mayuki
1
770
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
260
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
How to Ace a Technical Interview
jacobian
276
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Building an army of robots
kneath
302
44k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
A better future with KSS
kneath
238
17k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
The Cult of Friendly URLs
andyhume
78
6.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
510
Transcript
Let’s deploy on fridays I’m not slacking off, I’m deploying.
None
None
None
None
None
None
None
None
None
None
None
None
Build instance • Poll, waiting for a build • Process
a build • Build a container • Release the container
None
Can you see it? Change is coming
None
None
None
Build instance • Poll, waiting for a build • Process
a build • Build a container • Release the container
Build instance • Poll, waiting for a build • Build
a container • Release the container • Process a build
Build instance • Poll, waiting for a build • Process
a build • Build a container • Release the container
None
None
None
None
Upgrade API version Upgrade fetching posts Upgrade fetching users Use
uuids
Team Communication
Upgrade API version Upgrade fetching posts Upgrade fetching users Use
uuids
None
None
git revert
None
DEPLOY!!!
None
Canary deploys
Request Server A Server B Router
Request Server A Server B Router 50% 50%
Request Server A Server B Router 50% 50%
Request Server A Server B Router 33% 33% Server C
33%
github.com/dmathieu/sidekiq-canary
Refactoring and benchmarking
None
Customer-facing changes
None
Granularity
None
Multitask
Gradual rollouts
Request 99% 1% Old code path New code path Server
def partial_roll?(id) id % 100 < 1 end if partial_roll?(user_id)
call_new_method else call_old_method end
Refactoring and benchmarking
Customer-facing changes
Feature flags
None
Going further
None
None
None
bit.ly/ deploy-friday
Thank you Damien MATHIEU
None
Thank you Questions?
[email protected]
dmathieu