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
NewsDigestの開発を支える足回り: CI/CDと障害対応
Search
Tatch
September 30, 2021
Programming
1
720
NewsDigestの開発を支える足回り: CI/CDと障害対応
「BPStudy#169〜JX通信社を支える技術/速報サービスのエンジニアリングとチームのひみつ」でお話ししたものです
Tatch
September 30, 2021
Tweet
Share
More Decks by Tatch
See All by Tatch
pyconjp2021-locust
tatchnicolas
2
6.8k
dynamic-environment-setup-and-teardown-with-gitlab-and-k8s
tatchnicolas
1
7.2k
Other Decks in Programming
See All in Programming
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
610
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
230
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
810
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
20
3.8k
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
240
NPOでのDevinの活用
codeforeveryone
0
460
CursorはMCPを使った方が良いぞ
taigakono
1
200
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
1.4k
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
640
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
390
関数型まつりレポート for JuliaTokai #22
antimon2
0
160
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
870
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
The Cult of Friendly URLs
andyhume
79
6.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Bash Introduction
62gerente
614
210k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Writing Fast Ruby
sferik
628
62k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Rails Girls Zürich Keynote
gr2m
94
14k
Raft: Consensus for Rubyists
vanstee
140
7k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Transcript
NewsDigestͷ։ൃΛࢧ͑ΔճΓ CI / CDͱোରԠ ฏ ୡ
ฏୡ!5BUDI/JDPMBT ͔Β+9௨৴ࣾɻ 1ZUIPO(PͰαʔόαΠυ։ൃͨ͠Γɺ "84($1্Ͱڥ͑ͨΓͯ͠·͢ɻ ӳޠͱதࠃޠ͕ͪΐͬͱ͚ͩͤ·͢ɻ ࣗݾհ
w ͢͜ͱ w πʔϧΈͷత w ͦͷഎܠʹ͋Δ+9ͷจԽ w ͞ͳ͍͜ͱ w
ݸผͷπʔϧͷ͍ํ w αϯϓϧίʔυ ͡Ίʹ
"HFOEB 1. CI/C D 1.1. ύΠϓϥΠϯ։࢝ɺͦͷલʹ 1.2. σϓϩΠπʔϧ 1.3. γʔΫϨοτཧ
2. োରԠ 2.1. ใͷऩूͱཧ 2.2. ରԠͷ࣭Λఈ্͛͢Δ
εϐʔσΟͳ։ൃͷͨΊʹ $*$% 1
ύΠϓϥΠϯ։࢝ɺͦͷલʹ ίϛοτલͷ͋Ε͜ΕΛΈͰकΔ w 1ZUIPOͷίʔυϑΥʔϚοτCMBDL w ϧʔϧ͕ݫ͘͠ɺઃఆͷ༨͕ͳ͍Ή༨ͳ͍ w ͦΕͬͯ1ZUIPOJDͰʁ w 5IFSFTIPVMECFPOFBOEQSFGFSBCMZPOMZPOFPCWJPVTXBZUPEPJU
༁ͳΔ͘ɺ͋Δ͜ͱΛ͢ํ๏Ұ͚ͭͩͰ͋Δ͖ w ίϛοτલͷࣗಈద༻QSFDPNNJU w $*ͰνΣοΫͯ͠Δ͕ɺͦΕͰ1JQFMJOF͕͚͜Δͷ࣌ؒͷແବ w ϩʔΧϧڥͷγʔΫϨοτཧUFMMFS HJUTFDSFU
ύΠϓϥΠϯ։࢝ɺͦͷલʹ ίϛοτલͷ͋Ε͜ΕΛΈͰकΔ UFMMFS
σϓϩΠπʔϧ 044ͷྗΛआΓͯ$*ఆٛͷهड़ྔΛݮΒ͢ w &$4FDTQSFTTP w طଘͷ&$4αʔϏεΛΠϯϙʔτͯ͠ಋೖͰ͖Δ w -BNCEBTFSWFSMFTTGSBNFXPSL w ෳڥͷઃఆͭͷ:".-ϑΝΠϧͰ݁͢Δ
"84$-*Λͦͷ··͏ΑΓந͕ߴ͍
σϓϩΠͷݖݶཧ Ұ࣌తͳݖݶΛ࡞ͬͯফ͢ w 7BVMU w "84Λ$*͔Β৮ΔݖݶΛूதཧ w *".ϢʔβͷҰ࣌ൃߦ͕Ͱ͖Δ
σϓϩΠͷݖݶཧ Ұ࣌తͳݖݶΛ࡞ͬͯফ͢ w (JU-BC$* w QSFQPTUಛघͳεςʔδɺඞͣ࠷ॳͱ࠷ޙʹಈ͘ w ύΠϓϥΠϯ࣮ߦ࣌ʹ+85Λൃߦͯ͠ɺ7BVMUʹೝূΛ௨ͤΔ w ʮ͜ͷϦϙδτϦɺ͜ͷ"84ΞΧϯτͷɺ͜ͷݖݶηοτͶʯ
߈ΊकΓ োରԠ 2
ใͷऩूͱཧ ใͷछྨʹΑͬͯπʔϧΛ͍͚Δ w ઐ༻ͷ͍ࣺͯ4MBDLνϟϯωϧ w /PUJPOʹΑΔλεΫཧɾه
ใͷऩूͱཧ ઐ༻ͷ͍ࣺͯ4MBDLνϟϯωϧ • #incident-2021-09-30-database-slow-respons e w ϝϦοτ w োνϟϯωϧ͕࡞͞Εͯট͞ΕΔʮΉΉɺԿ͔͋ͬͨͳʯ w
ΞʔΧΠϒ͞ΕΔղܾͨ͠ͱ͍͏ϚʔΫʹͳΔ w ॻ͖ԥΓ͍͢ ࣗવͱ࣌ܥྻʹͳΔ w σϝϦοτ w ࣌ܥྻͰ͋Δ͕ɺ͕ೋసࡾసͯ͠ใͷ·ͱ·Γ͕ͳ͍ w ฒߦͯ͠ಈ͍ͯΔௐࠪɾ࡞ۀͷશମ૾͕ݟ͑ʹ͍͘
ใͷऩूͱཧ /PUJPOͰใཧͱλεΫͷཧ w ͲΜͳোͰඞͣΔ͜ͱΛνΣοΫϘοΫεʹ͢Δ w SVOCPPLखॱॻΑΓେ͖Ίͷཻ w ॳಈɾऴྃ࣌ͷಈ͖͕த৺ w ྫ
νϟϯωϧ࡞ؔऀ࿈བྷӨڹൣғ֬ೝ w ਐߦதͷௐࠪɾ࡞ۀλεΫΛΧϯόϯͰཧ w ʮ֬ఆɾ࠷৽ใʯ͕ཷ·͍ͬͯ͋͘ͱͰͦͷ··ݟฦͤΔࢿྉʹͳΔ w ޙ͔Βདྷͨਓʹͱͬͯʮࠓ͖ͨɺࡾߦͰঢ়گڭ͑ͯʯʹͳΔ
ใͷऩूͱཧ /PUJPOͰใཧͱλεΫͷཧ
ରԠͷ࣭Λఈ্͛͢Δ ʮ͠ɺଞͷਓ͕ͨͬͨΒྨࣅ͕ൃੜͨ͠Βʜʯ w োରԠ͕ऴΘͬͨ࣌Ͱɺ/PUJPO্ʹͦͦ͜͜ཧ͞Ε͍ͯΔ w ྨࣅͷোΛ͙ىͬͨ͜ͱ͖ʹରԠ͢ΔͷώϯτʹͳΔ w ϙετϞʔςϜ w ۩ମతͳোͷݪҼɾ߃ٱରԠ
w োରԠͦͷͷʹ͍ͭͯͷվળ w ʮͬͺΓॳಈͷ͜͜ม͑·ͤΜʁʯʮղࢄલʹ99ͨ͠΄͏͕Αͦ͞͏ʁʯ w νʔϜͱͯ͠ςϯϓϨΛҭ͍ͯͯ͘จԽʹ
·ͱΊ εϐʔυ͕ٻΊΒΕΔνʔϜ͔ͩΒͦ͜ɺ ʮߟ͑ͳ͍Ͱ͍͍͜ͱʯΛ಄͔ΒͲΜͲΜ͍ग़͢
5IBOL:PV