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
Googleクラウドサービスを利用したシステム構築
Search
Naomichi Yamakita
March 21, 2012
0
7
Googleクラウドサービスを利用したシステム構築
Naomichi Yamakita
March 21, 2012
Tweet
Share
More Decks by Naomichi Yamakita
See All by Naomichi Yamakita
プロダクト横断で可視化する ダッシュボードの開発
naomichi
0
240
第一回ライブラリ開発について考える会
naomichi
0
72
Serverless Application Repositoryでトイルを削減する
naomichi
0
280
SRE的観点から日常を振り返る
naomichi
0
840
GMO Research Tech Conference 2023
naomichi
0
16
Deep dive into cloud design
naomichi
0
18
インフラを横断して可視化するダッシュボードの開発
naomichi
0
12
SREってどんな仕事___メタップスがSREチームを立ち上げたキッカケとこれから_.pptx.pdf
naomichi
0
10
SRE Innovation in Metaps
naomichi
0
270
Featured
See All Featured
What's new in Ruby 2.0
geeforr
343
31k
Code Reviewing Like a Champion
maltzj
520
39k
The Cult of Friendly URLs
andyhume
78
6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
360
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.2k
For a Future-Friendly Web
brad_frost
175
9.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.2k
How GitHub (no longer) Works
holman
310
140k
The Invisible Side of Design
smashingmag
297
50k
Measuring & Analyzing Core Web Vitals
bluesmoon
3
76
Transcript
(PPHMFΫϥυαʔϏεΛར༻ͨ͠γεςϜߏங %5$PSQ /BPNJDIJ:BNBLJUB
ΞδΣϯμ ௐࠪͷझࢫ (PPHMF"QQ&OHJOF (PPHMF"QQT(PPHMF"QQT4DSJQU ૯ׅ
ௐࠪͷझࢫ
ௐࠪత 8FCαʔϏεΛߏங͢Δ্Ͱ։ൃޮΛ্ͤ͞Δख๏Λݕ౼͢Δ ։ൃޮͱίετݮΛݕ౼͢Δ্Ͱɺௐࠪରͱͯ͠ڍ͕ٕͬͨज़ ΫϥυίϯϐϡʔςΟϯά ࠓճΫϥυͷதͰಛʹεέʔϥϏϦςΟͷߴ͍(PPHMF"QQ &OHJOFɺ(PPHMF"QQTΛௐࠪͨ͠
Ϋϥυͷఆٛ ΠϯλʔωοτΛϕʔεͱͨ͠8FCαʔϏεͷ૯শ ϢʔβσʔλιϑτΣΞͷॴΛҙࣝͤͣɺඞཁʹԠͯ͡ʢΫϥΠΞ ϯτͷڥʹґଘͤͣʣαʔϏεΛར༻͢Δ͜ͱ͕Ͱ͖Δ ແྉɺ͘͠ར༻͚ͨͩ͠ࢧ͏ܗଶ͕ଟ͍
Ϋϥυͷछྨɻݴ༿ࣗମ֮͑Δඞཁͳ͠ 4BB4ܕʢ4PGUXBSFBTB4FSWJDFʣ ιϑτΣΞΛ8FCαʔϏεͱͯ͠ఏڙ (PPHMF"QQTɺ.JDSPTPGU0OMJOF4FSWJDFTɺ&WFSOPUF 1BB4ܕʢ1MBUGPSNBTB4FSWJDFʣ
ԾԽ͞ΕͨαʔόڥΛఏڙ (PPHMF"QQ&OHJOFɺ"NB[PO4 )BB4ܕʢ)BSEXBSFBTB4FSWJDFʣ Πϯλʔωοτܦ༝ͷϋʔυΣΞΠϯϑϥΛఏڙ "NB[PO&$
(PPHMF"QQ&OHJOFͱ(PPHMF"QQTͷҧ͍ (PPHMF"QQ&OHJOF 8FCΞϓϦέʔγϣϯΛެ։ՄೳͳϗεςΟϯάαʔϏε (PPHMF"QQT (NBJMɺΧϨϯμʔɺυΩϡϝϯτɺ(PPHMF͕ఏڙ͢Δ8FCΞϓϦ έʔγϣϯΛಠࣗυϝΠϯͰ͑Δ
ʮ(PPHMF"QQT4DSJQUʯΛ༻͍ͯΞϓϦέʔγϣϯͷࣗಈԽ֎෦Ϧ ιʔεͱͷ࿈ܞ͕Մೳ
(PPHMF"QQ&OHJOF
(PPHMF"QQ&OHJOFʢ("&ʣͱ (PPHMF͕ఏڙ͢ΔΫϥυڥ ("&্Ͱ8FCαʔϏεΛߏங͢Δ͜ͱ͕Ͱ͖Δ ྨࣅαʔϏεʹ"NB[PO4ɺ.JDSPTPGU"[VSF͕͋Δ ରԠݴޠ+BWBɺ1ZUIPOɺ(P
։ൃऀ("&͕ఏڙ͢Δ4%,Λར༻ͯ͠αʔϏεΛߏங͢Δ &DMJQTFΛ͏͜ͱͰ։ൃ͔ΒςετɾσϓϩΠ·ͰҰݩͯ͠ཧ͢Δ͜ ͱ͕Մೳ Πϯελϯε࣌ؒϕʔεͷ՝ۚ Ϧιʔεʢ$16సૹྔʣΛফඅ͚ͨͩ͠՝ۚ
("&Λ͏ϝϦοτ ࣗࣾσʔληϯλͷӡ༻ίετݮ ݄ؒສ17ɺ.#·ͰͷετϨʔδແঈͰར༻Մೳ ԾԽ͞ΕͨΠϯϑϥΛ͏ͨΊɺαʔόͷߏஙӡ༻͕ෆཁͱͳΔ ཧίϯιʔϧʢෛՙঢ়گɺϩάϏϡʔϫʣ͕ఏڙ͞Ε͍ͯΔ
αʔϏε(PPHMF͕ఏڙ͢ΔΠϯϑϥ্ͰՔಇ͢Δ (PPHMFͷΠϯϑϥ͕࣋ͭύϑΥʔϚϯεͱεέʔϥϏϦςΟੈք࠷ߴ Ϩϕϧ αʔϏεʹର͢ΔϦΫΤετ͕૿͑ΔͱࣗಈతʹΠϯελϯεΛ૿ ͠ɺແ੍ݶʹεέʔϧΞτΛߦ͏
("&ͷཧը໘ Πϯελϯεͷཧ ΞϓϦέʔγϣϯͷόʔδϣϯཧ σʔλͷཧ Քಇঢ়گͷαϚϦʔ
ύϑΥʔϚϯεͱΠϯελϯεͷཧ ΞϓϦέʔγϣϯͷύϑΥʔϚϯεΛ੍ޚ ΞΠυϧΠϯελϯεͷ࠷େΛઃఆ ৽͍͠ΠϯελϯεΛੜ͢Δ·Ͱͷػ࣌ؒΛઃఆ
ࠓ·ͰͷεέʔϧΞτٕ๏ 8FCɾΞϓϦέʔγϣϯαʔόͷෛՙࢄ ฒྻʹΛՃ %#αʔόͷෛՙࢄ ϨϓϦέʔγϣϯ
ߋ৽ॲཧͰϚελʹෛՙ͕ूத͢Δ ΫϥελϦϯά ͕૿͑Δ΄Ͳಉظͷॲཧίετ͕ߴ·Δ ύʔςΟγϣχϯά ϓϩάϥϜͷϩδοΫ͕ෳࡶʹͳΔ
(PPHMFͷεέʔϧΞτٕज़
(PPHMFͷεέʔϧΞτٕज़ ΫϥΠΞϯτͷԠมΘΒͳ͍ Πϯελϯεࣗಈతʹ૿͑Δ
("&͕ఏڙ͢Δػೳ ಠࣗυϝΠϯ طఆυϝΠϯl\TFSWJDF@OBNF^BQQTPUDPNz (PPHMFΞΧϯτΛ༻͍ͨϢʔβೝূ ࣗಈεέʔϦϯάͱෛՙࢄ
ӬଓετϨʔδʢޙड़ʣ ϑΝΠϧγεςϜͷ֓೦͕ͳ͍ ϑϧػೳΛ݉Ͷඋ͑ͨ։ൃϓϥοτϑΥʔϜ εέδϡʔϦϯά͞ΕͨλεΫ
("&ͷσϝϦοτ طଘͷΞϓϦέʔγϣϯίʔυ("&্Ͱಈ࡞͠ͳ͍ 3%#.4͕ఏڙ͞Ε͍ͯͳ͍ͨΊɺσʔλͷཧ(PPHMF͕ఏڙ͢Δ ʮ#JH5BCMFʯΛ͏ ιέοτ௨৴εϨουར༻Ͱ͖ͳ͍ ݒ೦
ސ٬ใΫϥυ্ʹ༬͚Δඞཁ͕͋Δ αʔϏε͕ڥʹґଘ͢Δ
ΫϥυαʔϏεࣗମʹো͕ى͜Δ͜ͱ
ࣄଶվળͭͭ͋͠Δ
ӬଓετϨʔδ#JH5BCMF #JH5BCMF(PPHMF͕։ൃͨ͠ετϨʔδαʔϏε ࢄܕ,74 ڧྗͳΫΤϦΤϯδϯτϥϯβΫγϣϯػೳΛ࣋ͭ ΫΤϦૢ࡞(2-ʢ(PPHMF2VFSZ-BOHVBHFʣΛ༻͍Δ
(2-ςʔϒϧؒͷ݁߹Λ͑ͯαϙʔτ͍ͯ͠ͳ͍ ("&্ͰՔಇ͢ΔશͯͷΞϓϦͭͷ#JH5BCMFͰཧ͞Ε͍ͯΔ ('4ʢ(PPHMF'JMF4ZTUFNʣͷԸܙʹΑͬͯϑΝΠϧܽଛͷՄೳੑۃΊ ͍ͯ
݄ɺ(PPHMF$MPVE42-Λൃද
(PPHMF$MPVE42-ͷ֓ཁ .Z42-ͱ΄΅ಉͷػೳΛ࣋ͭσʔλϕʔεΛఏڙ +%#$ͱ%#ΞΫηε"1*Λαϙʔτ ݄ݱࡏϓϨϏϡʔϦϦʔεͷஈ֊
αʔϏεΛެ։͢Δ·Ͱͷखॱ ։ൃݴޠͷબఆ ‣ ࠓճ+BWBʢ+41ɺ4FSWMFUʣΛ༻ +7.্Ͱ1)13VCZΛ࣮ߦ͢Δ͜ͱՄೳ ։ൃڥͷߏங ‣
&DMJQTF (PPHMF1MVHJOGPS&DMJQTFʢ("&4%,ʣ ΞϓϦέʔγϣϯͷ։ൃ ιʔεͷίϯύΠϧͱσϓϩΠ ‣ &DMJQTFͰҰݩཧ
("&+ͷ։ൃڥʢ&DMJQTFʣ ιʔείϯύΠϧޙʹ("&ʹσϓϩΠ "QQ&OHJOF4%,
("& )5.-ͰήετϒοΫΞϓϦΛߏஙͯ͠Έͨ XJUI'CPPUTUSBQ
σϞϯετϨʔγϣϯ ΞϓϦέʔγϣϯͷ࡞ ‣ IUUQTBQQFOHJOFHPPHMFDPN ։ൃڥͷհ ‣ αϯϓϧ)FMMP8PSME ‣
ίϯύΠϧͱσϓϩΠɺಈ࡞֬ೝ ‣ αϯϓϧίϝϯτߘ ཧը໘ͷհ
ΫϥυαʔϏεͷൺֱ αʔϏε ϝϦοτ σϝϦοτ wແঈར༻Մೳ w։ൃڥ͕උ͞Ε͍ͯΔ w(PPHMF%BUB"1*͕ར༻Մೳ wରԠݴޠ͕গͳ͍ wݴޠͷػೳ੍ݶ͕͋Δ wଞͷαʔϏεͷҠ২͕ࠔ
wରԠݴޠ͕ଟ͍ w3%#.4͕͑Δ w։ൃڥҙ w)"ɺࢹػೳ͕ෆ wαʔϏε͕౷߹͞Ε͍ͯͳ͍ wରԠݴޠ͕ଟ͍ w3%#.4͕͑Δ w7JTVBM4UVEJPOFUΛ༻Մೳ wར༻Ͱ͖Δ·Ͱʹ͕͔͔࣌ؒΔ w։ൃڥ͕ݶఆ͞Ε͍ͯΔ
(PPHMF"QQT(PPHMF"QQT4DSJQU
(PPHMF"QQTͱ (PPHMF͕ఏڙ͢Δ8FCαʔϏεΛಠࣗυϝΠϯͰ͑Δ جຊແঈͰར༻Մೳʢػೳ੍ݶ͋Γʣ εϚʔτϑΥϯܞଳʹରԠ ఏڙ͞ΕΔαʔϏεͷҰྫ
(NBJM (PPHMFΧϨϯμʔ (PPHMFυΩϡϝϯτ (PPHMFαΠτ
(PPHMF"QQTͷཧը໘ ಠࣗυϝΠϯΛઃఆʢ%/4ʹ$/".&ΛՃʣ
(PPHMF"QQT4DSJQUʢ("4ʣͱ (PPHMFͷαʔϏεΛࣗಈԽ͢ΔαʔόαΠυ+BWB4DSJQU &YDFMͷϚΫϩʹࣅ͍ͯΔ ("4Λར༻ͯ͠(PPHMF"QQTΛࣗಈԽͰ͖Δ (PPHMF"QQTΛ༻͍ͯ͠ͳͯ͘ར༻Մೳ
։ൃڥ8FCϒϥβ σόοΨϩΨʔͷ΄͔ɺ؆୯ͳόʔδϣϯཧػೳΛ࣋ͭ
("4ͰͰ͖Δ͜ͱ ۀͷࣗಈԽ (PPHMFαʔϏεͱαʔυύʔςΟͷ࿈ಈ εϓϨουγʔτʹ͓͚ΔΧελϜؔͷ࡞ 6*ͷ࡞
("4ͷݴޠ༷ ݴޠ+BWB4DSJQUɻͨͩ͠ϒϥβΦϒδΣΫτ͑ͳ͍ 8JOEPXɺ&WFOUɺ%PDVNFOU αʔόαΠυ+BWB4DSJQUͷͨΊɺΫϩευϝΠϯ੍͕ͳ͍ ֎෦ͷ8FC"1*͕༻Մೳ
9.-ɺ+40/ɺ40"1ɺ0"VUIʹରԠ εϓϨουγʔτͷૢ࡞7#"ʹࣅ͍ͯΔ ΠϕϯτυϦϒϯDSPOͷΑ͏ͳఆظ࣮ߦ͕Մೳ +%#$"1*ܦ༝Ͱ֎෦3%#.4ʹଓՄೳ
)FMMP8PSME BMFSU ؔ͑ͳ͍ͨΊɺ("4"1*͕ ఏڙ͢ΔϝοηʔδදࣔؔΛ͏
(PPHMFΞΧϯτ͕͋Ε͙͢ར༻Մೳ εϓϨουγʔτͷʮπʔϧʯ͔Βىಈ
("4ͷ։ൃڥʢΤσΟλʣ +%#$ϥΠΫʹ42-ΛൃߦՄೳ ࣗಈิʹରԠ
("4ͷ։ൃڥʢ(6*Ϗϧμʔʣ *%&ͷΑ͏ʹ(6*ΛઃܭͰ͖Δ
("4͕ఏڙ͢Δ"1* %FGBVMU"1* #BTF $BDIF $BMFOEBS $IBSUT $POUBDUT %PDT-JTU %PDVNFOU %PNBJO
'JOBODF (NBJM (SPVQT +ECD -BOHVBHF -PDL .BJM .BQT 1SPQFSUJFT 4JUFT 4PSQ 4QSFBETIFFU 6* 6SJ'FUDI 6UJMJUJFT 9NM "1*T4FSWJDFT 6SM4IPSUFOFS 1SFEJDUJPO 5BTLT "E4FOTF άϥϑΛඳը 3%#.4ʹଓ εϓϨουγʔτͷૢ࡞ )551௨৴Λߦ͏ ॖ63-ͷੜ ಠࣗ6*ͷઃܭ σʔλͷӬଓԽ
σϞϯετϨʔγϣϯ (6*ͷઃܭͱ֎෦8FC"1*ͷݺͼग़͠ ΞϯέʔτϑΥʔϜػೳ +%#$Λར༻ͨ͠σʔλूܭ #SPXTFSB"1*Λར༻ͨ͠ΩϟϓνϟཧΞϓϦέʔγϣϯ
("4Λར༻ͨ͠σʔλूܭ εϓϨουγʔτ͕ར༻Ͱ͖ΔͨΊɺ8FCΞϓϦέʔγϣϯʹ͓͚Δച্ ཧొɾར༻ঢ়گͱ͍ͬͨσʔλूܭػೳͱඇৗʹ૬ੑ͕ྑ͍ σʔλͷදࣔͱάϥϑԽ ฒͼସ͑ɺϑΟϧλϦϯά σʔλͷ$47μϯϩʔυ&YDFMܗࣜͷม
ҟͳΔΞϓϦέʔγϣϯͷσʔλूܭػೳΛҰݩཧ͢Δ͜ͱ͕Ͱ͖Δ ։ൃʹ͔͔Δίετ͕ݮՄೳ (PPHMF"QQTΛͬͨσʔλूܭࠓޙͷ։ൃͰಋೖ͍ͨ͠
֎෦࿈ܞͰͰ͖Δ͜ͱ 5XJUUFSGBDFCPPLΛ͡Ίͱͨ͠8FC"1*ͱ࿈ܞՄೳ ֎෦͔Βऔಘͨ͠σʔλΛ(PPHMF"QQTͱ࿈ܞ༷ͤͨ͞ʑͳαʔϏε͕ߟ ͑ΒΕΔ ྫ͑ʜ 5XJUUFSͷλΠϜϥΠϯ͔ΒҙϢʔβͷΞΫςΟϏςΟΛऔಘ
εϓϨουγʔτͰूܭ ࣗಈߋ৽͞ΕΔ#05αΠτΛߏஙʢ(PPHMFαΠτʣ GBDFCPPLͷΠϕϯτΛ(PPHMFΧϨϯμʔʹࣗಈಉظͤ͞Δ ʮ͍͍Ͷʯʮ5XJUUFSʯͷϘλϯͷΧϯτΛूܭ
૯ׅ
αʔϏεΛߏங͢Δ্Ͱۤ࿑ͨ͠ (PPHMFͷαʔϏεৗʹਐԽ͍ͯ͠Δ ػೳυΩϡϝϯτ͕ෆؾຯ 8FC"1*ͷಛ্࣭ɺ༷มߋ͕ଟ͍ ("4ʹؔͯ͠։ൃڥ͕ൃల్্
(6*Ϗϧμʔػೳ͕த్ ιʔείʔυͷࣗಈิ͕Ұ෦ޮ͔ͳ͍ ϦϑΝΫλϦϯά͠ʹ͍͘ Ϟδϡʔϧͷཧ͕໘
(PPHMFΫϥυͷྑ͍ ಋೖ͕ൺֱత༰қ ੈք࠷ߴϨϕϧͷΠϯϑϥΛར༻Ͱ͖Δ ࠓޙαʔόΤϯδχΞͷׂมΘ͍ͬͯ͘ʢͰ͋Ζ͏ʣ ("4։ൃڥΛΘͳ͍
(PPHMFͷαʔϏεৗʹਐԽ͍ͯ͠Δ ৗʹ࣌ʹదԠٕͨ͠ज़͕͙͢ʹ͑Δ ػೳ͕ʑվળ͍ͯ͠Δ ୯७ʹ໘ന͍
͜Ε͔ΒͬͯΈ͍ͨ͜ͱ (PPHMF%BUB"1*ͷ׆༻ ("4Λར༻ͨ͠8FCΞϓϦέʔγϣϯͷσʔλϚΠχϯά Ϋϥυڥʹ͓͚Δ8FCΞϓϦέʔγϣϯͷߏஙͱӡӦ