Speaker Deck
Speaker Deck Pro
Sign in
Sign up
for free
Zero downtime development with Elixir and Kubernetes
Bartosz Górka
March 06, 2019
Technology
0
31
Zero downtime development with Elixir and Kubernetes
Zero downtime development with Elixir and Kubernetes by Bartosz Górka
Bartosz Górka
March 06, 2019
Tweet
Share
More Decks by Bartosz Górka
See All by Bartosz Górka
bartoszgorka
0
31
bartoszgorka
0
10
bartoszgorka
0
2
Other Decks in Technology
See All in Technology
satoryu
0
2k
layerx
0
660
saoritakita
0
340
shirayanagiryuji
1
400
am7cinnamon
2
2.6k
yokatsuki
0
190
ocise
1
1.3k
toshinoritakai
1
190
sasakendayo
2
220
clustervr
0
170
nihonbuson
2
1.4k
noir_neo
0
120
Featured
See All Featured
danielanewman
1
470
productmarketing
5
640
dougneiner
119
7.8k
marktimemedia
6
330
bkeepers
408
57k
frogandcode
127
20k
chrislema
173
14k
jrom
114
7.1k
pedronauck
652
110k
paulrobertlloyd
71
1.4k
qrush
285
18k
ufuk
56
5.4k
Transcript
ZERO DOWNTIME DEVELOPMENT BartoszGorka96
Common issues Downtimes cost money Downtimes are risky and unpredictable
BartoszGorka96
… BartoszGorka96
Development Database Application BartoszGorka96
Our focus We are most focused on deployment stage and
often ignore data migration BartoszGorka96
… BartoszGorka96
- Task 1 - The risks of data migration BartoszGorka96
Risks - data migration process 1. Underestimating time and effort
2. Doing all at once 3. Performance limitations 5. No rollback plan 4. Poor testing and migrating BartoszGorka96
… BartoszGorka96
- Task 2 - Actions which we can do to
prevent bugs BartoszGorka96
Risks - data migration process 1. Underestimating time and effort
2. Doing all at once 3. Performance limitations 5. No rollback plan 4. Poor testing and migrating R E P L Y BartoszGorka96
We can use 1. down and up instead only change
2. raw sql instead structures 3. step by step - to be able to rollback changes 5. concurrently index build 4. drop only when confirmed BartoszGorka96
… BartoszGorka96
Example Add new column with NOT NULL constant* * with
default value also BartoszGorka96
Summary Always be careful with database migration. It’s is surely
safe to take a backup before execute migration. Always think of backward compatibility usually without reverting migration. BartoszGorka96
BartoszGorka96 Please give me a feedback