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
エンジニアリングをちゃんとやる あるいは 人類の平和 について / wsa02-rrreeeyyy
Search
rrreeeyyy
May 12, 2018
Technology
14
3.1k
エンジニアリングをちゃんとやる あるいは 人類の平和 について / wsa02-rrreeeyyy
第 2 回 Web System Architecture 研究会で(なぜか)招待講演をさせていただいたときの資料です
rrreeeyyy
May 12, 2018
Tweet
Share
More Decks by rrreeeyyy
See All by rrreeeyyy
Rethinking Incident Response: Context-Aware AI in Practice - Incident Buddy Edition -
rrreeeyyy
0
120
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
3
1.5k
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
240
An Efficient Incident Response Training with AI / SRE NEXT 2024 Sponsor Session
rrreeeyyy
1
5.5k
カンファレンスから見る SRE トレンド 2024 / SRE Trends from Conferences in 2024 #SRE_Findy
rrreeeyyy
4
2.4k
信頼性の育て方 / mackerel-meetup-15
rrreeeyyy
10
2.7k
SRE の歩き方・進め方 / sre-walk-through-procedure
rrreeeyyy
0
8.8k
「信頼性」を保ちつつ大規模サービスをリニューアルする / cookpad-tech-kitchen-service-embedded-sres
rrreeeyyy
11
12k
Cookpad and Prometheus
rrreeeyyy
6
21k
Other Decks in Technology
See All in Technology
2025新卒研修・Webアプリケーションセキュリティ #弁護士ドットコム
bengo4com
3
9.7k
JOAI発表資料 @ 関東kaggler会
joai_committee
1
140
いま、あらためて考えてみるアカウント管理 with IaC / Account management with IaC
kohbis
2
470
僕たちが「開発しやすさ」を求め 模索し続けたアーキテクチャ #アーキテクチャ勉強会_findy
bengo4com
0
2.6k
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
2
560
夏休みWebアプリパフォーマンス相談室/web-app-performance-on-radio
hachi_eiji
1
270
[OCI Technical Deep Dive] OracleのAI戦略(2025年8月5日開催)
oracle4engineer
PRO
1
250
Exadata Database Service on Dedicated Infrastructure セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
1
330
開発と脆弱性と脆弱性診断についての話
su3158
0
140
リモートワークで心掛けていること 〜AI活用編〜
naoki85
0
190
EKS Pod Identity における推移的な session tags
z63d
1
170
モノレポにおけるエラー管理 ~Runbook自動生成とチームメンションの最適化
biwashi
0
420
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
329
21k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Done Done
chrislema
185
16k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Gamification - CAS2011
davidbonilla
81
5.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Typedesign – Prime Four
hannesfritz
42
2.8k
Why Our Code Smells
bkeepers
PRO
338
57k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
BBQ
matthewcrist
89
9.8k
Transcript
"ΤϯδχΞϦϯάΛͪΌΜͱΔ" ͋Δ͍ "ਓྨͷฏ" ʹ͍ͭͯ ΫοΫύουגࣜձࣾ ΠϯϑϥετϥΫνϟʔ෦ SRE άϧʔϓ ٢ ཽଠ
( @rrreeeyyy ) ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 1
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 2
!SSSFFFZZZ !SSSFFFZZZ IUUQTSSSFFFZZZDPN :PTIJLBXB3ZPUB Me • Yoshikawa Ryota ( @rrreeeyyy
[reɪ] ) • גࣜձࣾϋʔτϏʔπ (2010/11 ʙ 2016/12) • MSP ࣄۀ෦ ӡ༻{ελοϑ,ΤϯδχΞ} • ΫοΫύουגࣜձࣾ (2017/01 ʙ) • ΠϯϑϥετϥΫνϟʔ෦ SRE άϧʔϓ • ڵຯྖҬ • ϞχλϦϯάɾ࣌ܥྻσʔλϕʔε • ࢄγεςϜɾϩʔυόϥϯα • ࣍ճී௨ͷൃදͰࢀՃ͢Δͧ!! ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 3
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 4
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 5
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 6
[࠶ܝ] Site Reliability Engineering ͱ • αΠτͷ৴པੑͷશͯʹൣғΛ࣋ͭɺͱ͢ΔΤϯδχΞϦϯάख๏ • ಛʹɺιϑτΣΞɾγεςϜΤϯδχΞϦϯάΛ༻͍ͯ՝Λղܾ͢Δ •
ྫ͑ɺύϑΥʔϚϯε • ύϑΥʔϚϯεʹ͕͋Δίʔυ SRE ͕ࣗίʔυΛॻ͍ͯमਖ਼͢Δ • ྫ͑ɺεέʔϥϏϦςΟɾΞϕΠϥϏϦςΟ • ਓؒʹΑΔखಈͷ࡞ۀΛίʔυʹΑΓࣗಈԽ͢Δ • نΞΫηε͕૿େͯ҆͠ఆͯ͠αʔϏεΛఏڙͰ͖Δঢ়ଶʹ͢Δ • ΠϯϑϥΤϯδχΞͷൣғ͕૿େͨ͠தͰ͋Δछɺ৬Λ࠶ఆٛͨ͠ͱଊ͍͑ͯΔ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 7
[࠶ܝ] ӡ༻ͷݱ͔Βݟͨݚڀɾจͷੈք • ΤϯδχΞϦϯάΛͪΌΜͱΔࣄ͕ݱϨϕϧͰධՁ͞ΕΔΑ͏ʹ • ͜ͷจ຺ͷҰͭͱͯ͠ SRE ͷΑ͏ͳख๏ɾ৬छ͕ग़͖ͯͨͱ͍͏ཧղ • จΛॻ͍ͨΓಡΜͰཧղɾ࣮͢Δࣄ͕ධՁ͞ΕΔΑ͏ʹͳ͖ͬͯͨ
• ࣮ࡍͷӡ༻ͷݱͰಡΜͰཧղ͢Δࣄඞཁʹͳ͖ͬͯͨ • ٕज़બఆͷࢦඪͷҰͭͱͯ͠ϛυϧΣΞͷڍಈͷཧղͳͲ • ͍ΘΏΔݚڀ։ൃͷΑ͏ͳ෦Ͱͳͯ͘ৗతʹߦ͏Α͏ʹ • ଟ͘ͷٕज़اۀͰӡ༻ɾϛυϧΣΞͷจ͕ଟ͘ग़ͯ͘ΔΑ͏ʹ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 8
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 9
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 10
จΛެ։͢Δ͜ͱͰ༏Ґੑ͕ൃੜ͢ΔΑ͏ʹ • Google, Amazon, Facebook, Ne3lix... • ଞʹେখؔΘΒ༷ͣʑͳاۀ͔Βจ͕ग़͍ͯΔ • USENIX
ͷΧϯϑΝϨϯεͰٕज़اۀ͕ੵۃతʹൃද • FAST, OSDI, NSDI, LISA, Security ... • ΫϥυαʔϏεͷ෦࣮ͷϛυϧΣΞʹؔΘΒͣจ͕ग़Δ • 1 ΤϯδχΞͰจΛಡΉ͜ͱͰΫϥυαʔϏεɾϛυϧΣΞͷબఆΛߦ͏ • ݚڀΛ࣮ӡ༻Ͱ͑ΔΑ͏ʹ࣮͢Δ͜ͱͰޭͨ͠ Hashicorp ͷΑ͏ͳྫ͋Δ • จΛ௨ٕͯ͡ज़ΛΦʔϓϯʹ͢Δࣄ͕اۀɾίϛϡχςΟͷ༏Ґੑʹܨ͕Δ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 11
Φʔϓϯͳϓϩηεͷݚڀɾจ͕ੈքΛม͑Δ • ػցֶशͳͲͷจ຺Ͱ arXiv Ͱͷจϕʔεͷใަ͕Μ • ͍͍͢͝Ͱٕज़͕ਐา͍ͯ͘͠ͷΛͷͨΓʹग़དྷΔ • ͍ΘΏΔԾ௨՟ϒʔϜͷى͜Γͨͬͨ 9
ϖʔδͷจ͔Β • h*ps:/ /bitcoin.org/bitcoin.pdf • ϙΞϯΧϨ༧ɾABC ༧ͷΑ͏ͳֶͷະղܾ 1 ͭͷΦʔϓϯͳจ͔Βղܾ • h*ps:/ /arxiv.org/abs/math/0211159 • h*p:/ /www.kurims.kyoto-u.ac.jp/~moHzuki/Inter-universal%20Teichmuller%20Theory%20I.pdf • ʰՀཟͱόβʔϧʱͷݚڀɾจ൛͕ى͖ͭͭ͋ΔͷͰͳ͍͔ʁ • "Given enough eyeballs, all bugs are shallow" ݚڀɾจͷੈքͰద༻ՄೳͳͷͰͳ͍͔ʁ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 12
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 13
վΊͯ: Web ΤϯδχΞͷੈքʹى͖ͭͭ͋Δ͜ͱ • ݚڀɾจ͕ΦʔϓϯʹͳΓݱϨϕϧͰऔΓೖΕΒΕ͡Ίͨ • اۀίϛϡχςΟʹͱͬͯެ։͢Δ͜ͱͷ༏Ґੑ͋ΔͨΊ • Ұݸਓͱͯ͠ެ։ɾऔಘ͕༰қͱͳΓશମͱͯ͠ͷϨϕϧ্͕ͨ͠ •
ݚڀɾจ͕લఏͱͳΓΞʔΩςΫνϟ͕ਐา͍ͯ͘͠Α͏ʹͳ͖ͬͯͨ • ෳࡶͱ͞Ε͍͕ͯͨԿΒ͔ͷݚڀख๏Ͱ͋ΔఔղܾՄೳʹͳΔ • ϛυϧΣΞΫϥυαʔϏεɺ༷ʑͳݚڀɾจΛݟͯબΔ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 14
վΊͯ: Web ΤϯδχΞͷੈքʹى͖ͭͭ͋Δ͜ͱ • ཪΛฦͤ؆୯ͳࣄͲΜͲΜՁ͕ബΕͯ͘ΔΑ͏ʹͳͬͨ • ϛυϧΣΞͷઃఆΛͯ͠ɺͨͩಈ͔ͤΔ͚ͩͰμϝͳ࣌ʹͳͬͨ • Ͳ͏͍ͬͨઃఆͳͷ͔ʁ͜ͷઃఆʹ͢Δͱͳͥྑ͍ͷ͔ʁ •
ਖ਼͍͠ཧɾίʔυϨϕϧͰਖ਼֬ʹཧղ͍ͯ͠Δ͜ͱʹҙຯ͕͋Δ • ෳࡶԽ͢ΔதͰɺυϝΠϯߋʹࡉ͔͘ࡉԽ͞ΕΔΑ͏ʹͳͬͨ • ͋Δఔ·ͰڊਓͷݞʹΕΔ͕ɺ࠷దԽͷͨΊʹ࡞ΓࠐΈ͕ඞཁ • Ͳͷ "ڊਓ" ʹΔͷ͔ʁ"ڊਓ" ΛͲ͏͍͜ͳ͔͢ʁͱ͍͏ٕྔඞཁ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 15
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 16
"ΤϯδχΞϦϯάΛͪΌΜͱΔ" • "ͪΌΜͱΔ" ༷ʑ͋Δ͕...ྫ͑ "ͪΌΜͱͯ͠Δͳ͋" ͱ͍͏ಉ྅࣍ͷ͜ͱ͕Ͱ͖͍ͯΔ • ৫ϛυϧΣΞͷഎܠΛਖ਼͘͠ѲͰ͖Δ • ৫ϛυϧΣΞͷΛࣗΒൃݟͰ͖Δ
• ৫ϛυϧΣΞͷΛղܾ͢Δख๏ΛఏҊͰ͖Δ • ఏҊͨ͠ख๏ΛࣗΒ࣮ફɾ࣮ͨ͠ΓͰ͖Δ • ఏҊͨ͠ख๏Λ࣮ફɾ࣮ͨ݁͠ՌΛଞख๏ͷ݁Ռͱൺֱ͠ߟͰ͖Δ • ্هͷ߲ΛཧతͰޡΓͷগͳ͍จষʹ·ͱΊΔ͜ͱ͕Ͱ͖Δ • ·ͱΊͨจষɾ࣮ͷ݁ՌΛެ։͠ΦʔϓϯͳͰٞ͠վળͰ͖Δ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 17
"ΤϯδχΞϦϯάΛͪΌΜͱΔ" • ݚڀɾจͷख๏ʹͱ͍ͯۙ • ࣮ࡍͷۀͱݚڀɾจͷڥքݱϨϕϧͰᐆດʹͳ͖ͬͯͨ • ࣮ࡍʹձࣾͰԿ͔େ͖ͳ͜ͱΛΔͱ͖ Design Doc Λॻ͍͍ͯΔ
• খ͞ͳ͜ͱΛΔͱ͖ GitHub ͷ Issue PR Ͱٞɾ࣮Λߦ͏ • Ͳ͜·ͰຊؾͰߟ͑ൈ͍ͯɺٞͯ͠ɺखΛಈ͔ͤΔ͔ɺͱ͍͏ͱ͜Ζ͕伴ʹͳΓͦ͏ • "ΤϯδχΞϦϯάΛͪΌΜͱΔ" ͕Ͱ͖ΔͱׂͱͲͷͰ௨༻͢Δ • ͦͷͳ͔Ͱ༷ʑͳͷࣝΛऔΓೖΕͭͭઐΛਂԽͤ͞ΒΕΔ • WSA ݚͷΑ͏ͳ "ͪΌΜͱΔ" Φʔϓϯͳ͕͋Δ͜ͱૉΒ͍͠ͱࢥ͏ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 18
ͪΌΜͱΔɺͷ࿈Λͭ͘Δ • ͩΕ͔͕ΦʔϓϯͳͰ "ͪΌΜͱΔ" ͜ͱͰ ... • ٞʹࢀՃͨ͠ਓ "ͪΌΜͱΔ" ...
• ͦͷਓ͕·ͨ "ͪΌΜͱΔ" ... • ΈΜͳͪΌΜͱͰ͖Δʂ • ੈքϨϕϧͰٕज़ͷਐา͕ૣ͘ͳΔͷͰɺͱߟ͍͑ͯΔ • ͔ͤͬ͘ΤϯδχΞͳΜ͔ͩΒٕज़ͰੈքΛม͍͑ͨ • ٕज़͕ਐา͢ΕੈքฏʹͳΔʂ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 19
! ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) |
Yoshikawa Ryota ( @rrreeeyyy ) 20
One more things... ୈ 2 ճ Web System Architecture ݚڀձ
(2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 21
ͳͥΔͷ͔ ຊؾͰߟ͑ͯΈΔ • ;ͱཱͪࢭ·ͬͯ ͳͥ͜ΕΛΔͷ͔ ਂ͘ߟ͑ͯ͠ΈΔ • ͳٕͥज़ΛֶͿͷʁͳͥݚڀΛ͢Δͷʁ • ୯ʹ໘ന͍͔Βʁࣄ͔ͩΒʁ৯͍ͯͨ͘Ί͚ͩʁ
• ͜ͷٕज़ɾݚڀɾΞʔΩςΫνϟ͕࣮ݱͨ͠ઌʹͳʹ͕͋ΔͷͩΖ͏͔ʁ • ࣮ݱͨ͠ੈքͰɺࣗͲ͏ͳ͍͍ͬͯͨͷͩΖ͏͔ʁ • ࣮ݱͨ͠ੈքͰɺΈΜͳͲ͏ͳ͍ͬͯΔͷͩΖ͏͔ʁ • "ͪΌΜͱΔ" ͷ͍͕͠ɺ࠳ંͦ͠͏ʹͳͬͨͱ͖ࣗʹྗΛ༩͑ͯ͘ΕΔ • ΈΜͳ͕ਖ਼ࣗ͘͠ͷ৴೦Λٕ࣋ͬͯज़Λਐาͤ͞Δ͜ͱ͕ਓྨͷฏͳͷͰʁ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 22
ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa
Ryota ( @rrreeeyyy ) 23
"ͪΌΜͱΔ" + "ͳͥΔͷ͔" = ୈ 2 ճ Web System Architecture
ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 24
·ͱΊ • ҰݸਓͷݱϨϕϧ͔Βݟͨ࠷ۙͷۀքͷྲྀΕʹ͍ͭͯ • ݚڀจΛϕʔεʹͨ͠ख๏͕ٞ૿͖͍͑ͯͯΔ • Ұਓͷॻ͍ͨจ͕Φʔϓϯͳʹग़ͯੈքΛม͑Δ͜ͱ • Web ΤϯδχΞʹى͖ͭͭ͋Δ͜ͱʹ͍ͭͯ؆୯ʹߟ
• ؆୯ͳࣄɾ಄ΛΘͳ͍ࣄՁ͕ࣦΘΕ͍ͯ͘ • "ͪΌΜͱΔ" ͜ͱ͕ඇৗʹେࣄʹͳ͍ͬͯ͘ͱ༧ • "ͪΌΜͱΔ" ͨΊʹ "ͳͥΔͷ͔" ͷ࣠Λ࣋ͭ͜ͱͰਓྨ͕ฏʹͳΔ͔ ୈ 2 ճ Web System Architecture ݚڀձ (2018/05/12) | Yoshikawa Ryota ( @rrreeeyyy ) 25