Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Before Chaos Engineering
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hazumi Ichijo
May 20, 2019
Programming
1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Before Chaos Engineering
golang.tokyo#24
https://golangtokyo.connpass.com/event/129067/
Hazumi Ichijo
May 20, 2019
More Decks by Hazumi Ichijo
See All by Hazumi Ichijo
RailsとRidgepoleの マイグレを120倍早くする
hazumirr
0
470
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
1.5k
病院の情報フローを理解して、 予約〜会計の見え方が変わった話
hazumirr
1
2k
Rubyのコード削除したい時 僕がやること
hazumirr
0
300
テーブル駆動テストと状態
hazumirr
5
2.2k
オンラインテストしようと思った その日に開始できる環境を目指して
hazumirr
0
1.1k
推薦によるプロダクト改善とマイクロサービスが噛み合った話
hazumirr
2
4.9k
ChatGPTで僕が知っていることまとめ
hazumirr
3
3.1k
プロダクトチームとどう 協業し分析環境を改善するか
hazumirr
2
1.7k
Other Decks in Programming
See All in Programming
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
250
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
420
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
250
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
430
FreeBSDでZabbixを動かす
kenkino
0
340
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
130
mrbgem 三角測量 開発
ogom
0
170
すこし踏み込む CancellationToken
htkym
2
1.5k
wkhtmltopdfの次どうするか問題2026
willnet
2
1.8k
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
320
JRuby: Past, Present, and Future
headius
0
220
Featured
See All Featured
So, you think you're a good person
axbom
PRO
2
2.2k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Visualization
eitanlees
153
17k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
440
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Agile that works and the tools we love
rasmusluckow
331
22k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
240
A Soul's Torment
seathinner
8
3.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
How to train your dragon (web standard)
notwaldorf
97
6.8k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
540
Transcript
©2019 Wantedly, Inc. Chaos Engineeringͷ खલͷ golang.tokyo #24 May 20,
2019 - Hazumi Ichijo (rerost/hazumirr) ΞϓϦέʔγϣϯΤϯδχΞ͚ͩͰͰ͖Δ͜ͱ
©2018 Wantedly, Inc. ࣗݾհ Ұᑍ!IB[VNJSS!SFSPTU 4FSWFS4JEF&OHJOFFSJO8BOUFEMZ (P 3BJMT 3FBDUʜ ग़ւಓ
©2019 Wantedly, Inc. 1. αʔϏε͕ෆ҆ఆͳ࣌ɺͲΜͳӨڹ͕ͰΔ͔ 2. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ɺͲΜͳӨڹ͕ͰΔ͔
©2019 Wantedly, Inc. 1. αʔϏε͕ෆ҆ఆͳ࣌ɺͲΜͳӨڹ͕ͰΔ͔ 2. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ɺͲΜͳӨڹ͕ͰΔ͔ => Ѳ͍ͯ͠ΔͭΓ͕ͩͦΕຊ͔ʁ
©2019 Wantedly, Inc.
©2019 Wantedly, Inc. ͦ͏ͩChaos Engineeringͩ
©2019 Wantedly, Inc. ͦͦChaos Engineeringͱʁ
©2019 Wantedly, Inc. > ΧΦεΤϯδχΞϦϯάɺࢄγεςϜʹ͓͍ͯγεςϜ͕ෆ҆ ఆͳঢ়ଶʹ͑Δ͜ͱͷग़དྷΔڥΛߏங͢ΔͨΊͷݕূͷن https://principlesofchaos.org/?lang=JAcontent#
©2019 Wantedly, Inc. 1. Πϯελϯε͕μϯ͢Δ 2. DB͕٧·ΔɾΞΫηεͰ͖ͳ͘ͳΔɹ 3. ґଘ͢ΔଞͷαʔϏε͕ෆ҆ఆʹͳΔ etc…
ෆ҆ఆͳঢ়ଶͱ
©2019 Wantedly, Inc. 1. αʔϏε͕ෆ҆ఆͳ࣌ɺͲ͏͍ͬͨӨڹ͕ͰΔ͔ 2. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ɺͲΜͳӨڹ͕ͰΔ͔ Γ͍ͨ͜ͱ
©2019 Wantedly, Inc. αʔϏε͕ෆ҆ఆͳ࣌ ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# 4FSWJDF$
©2019 Wantedly, Inc. ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# 4FSWJDF$ αʔϏε͕ෆ҆ఆͳ࣌
©2019 Wantedly, Inc. ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# 4FSWJDF$ αʔϏε͕ෆ҆ఆͳ࣌
©2019 Wantedly, Inc. ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# 4FSWJDF$ αʔϏε͕ෆ҆ఆͳ࣌
©2019 Wantedly, Inc. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ ࣗͷαʔϏε ଞͷαʔϏε
©2019 Wantedly, Inc. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ ࣗͷαʔϏε ଞͷαʔϏε
©2019 Wantedly, Inc. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ ࣗͷαʔϏε ଞͷαʔϏε
©2019 Wantedly, Inc. ґଘ͢ΔαʔϏε͕ෆ҆ఆͳ࣌ ࣗͷαʔϏε ଞͷαʔϏε
©2019 Wantedly, Inc. Ͳ͏͍ͬͨ͜ͱΛ͢Δ͖͔ʁ
©2019 Wantedly, Inc. 1. ఆৗঢ়ଶʹ͓͚ΔৼΔ͍ͷԾઆΛཱͯΔ 2. ࣮ੈքͷࣄଟ༷Ͱ͋Δ 3. ຊ൪ڥͰݕূΛ࣮ߦ͢Δ 4.
ܧଓతʹ࣮ߦ͢ΔݕূͷࣗಈԽ 5. ӨڹൣғΛہॴԽ͢Δ https://principlesofchaos.org/?lang=JAcontent# Ͳ͏͍ͬͨ͜ͱΛߦ͏͔
©2019 Wantedly, Inc. 1. ఆৗঢ়ଶʹ͓͚ΔৼΔ͍ͷԾઆΛཱͯΔ 2. ࣮ੈքͷࣄଟ༷Ͱ͋Δ 3. ຊ൪ڥͰݕূΛ࣮ߦ͢Δ 4.
ܧଓతʹ࣮ߦ͢ΔݕূͷࣗಈԽ 5. ӨڹൣғΛہॴԽ͢Δ https://principlesofchaos.org/?lang=JAcontent# 43&ͱͷڠྗ৫త ͳରԠ͕ඞཁ Ͳ͏͍ͬͨ͜ͱΛߦ͏͔
©2019 Wantedly, Inc. 1. 1ඵؒͷಈը࠶ੜͳͲ 2. APIͷϨεϙϯεͳͲ 1. ఆৗঢ়ଶʹ͓͚ΔৼΔ͍ͷԾઆΛཱͯΔ =>
ͦΕΛकΔͨΊͷͷ͕ॏཁɻͦͷ֬ೝ͕Ͱ͖Ε͋Δఔ҆৺ ྫ: AWS͕region͝ͱμϯͨ͠ࡍɺଞͷregionʹfail over͢ΔͳͲ ྫ
©2019 Wantedly, Inc. 1. Πϯελϯε͕μϯ͢Δ 2. DB͕٧·ΔɾΞΫηεͰ͖ͳ͘ͳΔɹ 3. ґଘ͢ΔଞͷαʔϏε͕ෆ҆ఆʹͳΔ etc…
2. ࣮ੈքͷࣄଟ༷Ͱ͋Δ => ͜͏͍ͬͨཁૉΛೖΕΒΕΔΑ͏ʹ͢Δ = Fault Injection
©2019 Wantedly, Inc. ͜ͷ2͚ͭͩͳΒQAڥͰ ΞϓϦέʔγϣϯΤϯδχΞ͚ͩͰՄೳ
©2019 Wantedly, Inc. ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. ࣗͷαʔϏε 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ ֬ೝ༻ͷίʔυΛೖΕΔͷ͕໘
©2019 Wantedly, Inc. ࣗͷαʔϏε JOUFSDFQUPS 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. ࣗͷαʔϏε ൪Λฦ͢ ͘ͳΔ ઃఆ͍ͯ͠ΔλΠϜΞ
τΑΓϨεϙϯε͕͍ JOUFSDFQUPS 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. ࣗͷαʔϏε ൪Λฦ͢ ͘ͳΔ ઃఆ͍ͯ͠ΔλΠϜΞ
τΑΓϨεϙϯε͕͍ JOUFSDFQUPS 4FSWJDF" 4FSWJDF# { "interval": 1, "slow_response_option": { "enable": true, "time": 5 }, "server_error_option": { "enable": true } } Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. ࣗͷαʔϏε ൪Λฦ͢ ͘ͳΔ ઃఆ͍ͯ͠ΔλΠϜΞ
τΑΓϨεϙϯε͕͍ JOUFSDFQUPS 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. ࣗͷαʔϏε JOUFSDFQUPS 4FSWJDF" 4FSWJDF# Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC 1VCMJTI 4VCTDSJCF Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC 1VCMJTI 4VCTDSJCF Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC ॏෳ৴Λ͢Δ 1VCMJTIͨ͠ॱ൪Ͱ৴͠ͳ͍
1VCMJTI 4VCTDSJCF Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC ॏෳ৴Λ͢Δ 1VCMJTIͨ͠ॱ൪Ͱ৴͠ͳ͍
1VCMJTI 4VCTDSJCF ϥΠϒϥϦ͕ߦ͏ͷͰ JOUFSDFQUPSΛڬΊͳ͍ Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC 1VCMJTI 4VCTDSJCF 1SPYZ 1SPYZ
Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. 4FSWJDF" 4FSWJDF# $MPVE1VC4VC 1VCMJTI 4VCTDSJCF 1SPYZ 1SPYZ
ॏෳ৴Λ͢Δ 1VCMJTIͨ͠ॱ൪Ͱ৴͠ͳ͍ Fault Injectionͱͦͷ֬ೝ
©2019 Wantedly, Inc. https://github.com/rerost/unstable https://github.com/rerost/chaos-pubsub
©2019 Wantedly, Inc.
©2019 Wantedly, Inc. σϝϦοτ ݱঢ়ͷ֬ೝͰ͖Δ͕͍ͭյΕΔ͔Θ͔Βͳ͍ɹ ςετ͢Δͷ͕ਓखͳͷͰ֬ೝ͕໘ ςετ͕ཏͰ͖͍ͯͳ͍Մೳੑ͕͋Δ
©2019 Wantedly, Inc. ·ͱΊ खಈͰ͋ΔఔͷݕূͰ͖Δ ςετ༻ͷίʔυൈ͖͍͢ܗʹ͓ͯ͘͠ɹ 2"ڥ͚ͩͰࢼ͓ͯ͘͠ҙຯ͋Δɹ
σϝϦοτଟ͍ͷͰҰൠʹ͓͢͢ΊͰ͖Δ ํ๏Ͱͳ͍