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
660
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.6k
dynamic-environment-setup-and-teardown-with-gitlab-and-k8s
tatchnicolas
1
6.9k
Other Decks in Programming
See All in Programming
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
140
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
590
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
ドメインイベント増えすぎ問題
h0r15h0
2
570
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
1.9k
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
300
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
180
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
300
Beyond ORM
77web
11
1.6k
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
770
Featured
See All Featured
The Language of Interfaces
destraynor
155
24k
Visualization
eitanlees
146
15k
Making the Leap to Tech Lead
cromwellryan
133
9k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Optimising Largest Contentful Paint
csswizardry
33
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
BBQ
matthewcrist
85
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Designing for Performance
lara
604
68k
Six Lessons from altMBA
skipperchong
27
3.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
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