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
appengine-ja-night-35.pdf
Search
Hiroyoshi HOUCHI
November 09, 2016
0
110
appengine-ja-night-35.pdf
Hiroyoshi HOUCHI
November 09, 2016
Tweet
Share
More Decks by Hiroyoshi HOUCHI
See All by Hiroyoshi HOUCHI
aws-dev-day-2020-f9-cdk-bestpractice
hixi
0
320
CDK 利用者から見る CDK
hixi
3
1.1k
ITS を支える 情報集約基盤 アーキテクチャ / ITS Tech Study #02
hixi
1
820
SIerIoT vol.7
hixi
1
580
AWS IoT を用いた DeNA オートモーティブアーキテクチャ / DeNA Techcon 2018 Houchi Hiroyoshi
hixi
1
34k
sake-game-gcp-5.pdf
hixi
0
120
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
A designer walks into a library…
pauljervisheath
207
24k
We Have a Design System, Now What?
morganepeng
53
7.7k
Testing 201, or: Great Expectations
jmmastey
42
7.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Building Adaptive Systems
keathley
43
2.7k
4 Signs Your Business is Dying
shpigford
184
22k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Transcript
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. Hiroyoshi HOUCHI System
Development Dept. Open Platform Business Unit DeNA Co., Ltd. "OE"QQ %F/" ʹ͓͚Δ("&(P બఆ͔Β׆༻·Ͱ BQQFOHJOFKBOJHIU 1
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࣗݾհ 2
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࣗݾհ ์Ղ ⁃
@hixi_hyi ͱ͔ hixi ͱ͔ͷ HN ͬͯ·͢ ॴଐʑ ⁃ גࣜձࣾDeNA ΦʔϓϯϓϥοτϑΥʔϜࣄۀຊ෦γεςϜ෦ ⁃ ৽ଔೖ͔ࣾΒͣͬͱϓϥοτϑΥʔϜ։ൃ (̐) ⁃ ࠓճͷϓϩδΣΫτͰٕज़બఆ GCP ΛͲͷΑ͏ʹ͍ͬͯ͘ͱ͔ܾΊ ͨΓͯ͠·ͨ͠ 3
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࠓͷ༰ 4
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. AndApp ʹ͓͚Δ GAE/Go
બఆ͔Β׆༻·Ͱ ͳͥ GAE/Go ΛબΜͩͷ͔ ݁ՌͲ͏͍ͬͨγεςϜΞʔΩςΫνϟʹҭͬͨͷ͔ 5
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. AndApp հ 6
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. AndApp ⁃ DeNA
͕ఏڙ͢Δ PC ͚ϓϥοτϑΥʔϜ - ̍ͭͷΞϓϦΛ֎ͰεϚϗɺՈͰ PC Ͱ ⁃ ࣄલొ͓ͯ͠Γ·͢ͷͰੋඇ - https://www.andapp.jp 7
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࣄྫհ 8
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ʙGAE/Go ܾఆ·Ͱ 9
ࣄྫհ
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. GAE/Go ʹৼΓͬͨͱ͖ͷ։ൃঢ়گ ⁃
ϑϧϚωʔδυͰͷӡ༻ݮΛࢦͯ͠ GCP ར༻Λߟ͑ͯͨ ⁃ ϑϧϚωʔδυαʔϏεॳΊͯ (ࠓ·ͰΦϯϓϨ, AWS(EC2)) ⁃ ઌߦͯ͠ GKE/Go, GAE/Java, GAEFE/Perl Ͱ։ൃத(ࡁ)ͷ service ͋Γ ⁃ 3ϲ݄ޙʹύʔτφʔ༷ʹ৽نγεςϜΛఏڙ͢Δ - ৽نՃͷઃܭظؒͱͯ͠ 2 िؒ΄Ͳ࣌ؒ͋Γ - αʔό։ൃऀͦͷ࣌Ͱ 15 ਓ΄ͲΞαΠϯࡁΈ 10
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 11 ར༻ͨ͠ΞʔΩςΫνϟɾ ݴޠ͕ΒΒ
ઌߦͯ͠࡞͍ͬͯͨ service ͷ ("&+BWB ("&'&1FSM (,&(P
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ར༻ͨ͠ΞʔΩςΫνϟɾݴޠ͕ΒΒ ։ൃํ๏ɺӡ༻ํɾࢿྉͳͲ͕·ͱ·ΓͣΒ͍ ⁃
࣭ΛकΔͨΊͷ࡞ۀʹଟ͘ͷਓһ͕͔͞ΕΔ͜ͱʹͳΔ ⁃ GCP(ϑϧϚωʔδυ) ࣗମॳͰ͋ΔͨΊɺࢼߦࡨޡ͕͋Δͣɻ มԽ͕͋ͬͨࡍʹɺͯ͢ʹద༻͍͔ͯ͠ͳ͚Εߦ͚ͳ͍ ਓͷྲྀಈੑʹ͔͚Δ ⁃ ΞʔΩςΫνϟݴޠҟͳΔͨΊɺαϙʔτΛཔΉࡍʹֶश͕͔͔Δ 12
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 13 ΞʔΩςΫνϟɾݴޠΛҰͭʹ
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ΞʔΩςΫνϟɾݴޠΛҰͭʹ ࣝͷڞ༗ ⁃
୭͔͕ϋϚͬͯ୭͔͕ղܾ͍ͯ͠Δ ⁃ Ͳ͏͢Δ͖͔ΜͩΒଞͷਓͱ૬ஊͰ͖Δ ϥΠϒϥϦͷڞ༗ ⁃ ڞ௨ϥΠϒϥϦ࣮֬ʹඞཁʹͳΔ ⁃ ผݴޠͩͱҠ২ίετ͕ൃੜ͢Δ ਓͷྲྀಈੑΛߴΊΔ ⁃ ୭͔ॿ͚ͯʔ͕ग़དྷΔ ⁃ τϥϒϧγϡʔςΟϯά͕ΈΜͳͰڠྗͰ͖Δ 14
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ݕ౼ͨ͠γεςϜ GKE/XXX ➖
IaaS Ͱ͋Δ͕Ώ͑ʹϓϩηεཧɾӡ༻ΛͲͷΑ͏ʹ͢Δͷ͔֤ར༻ऀଆ͕ Ұఆߟ͑Δඞཁ͕͋Δ GAEFE/XXX ➕ ׳Ε͍ͯΔ Perl / Ruby Ͱ։ൃ͍ͨ͠ͱ͍͏ཁ͕͋ͬͨ ➖ ͦΕͧΕͷϓϩάϥϜͷϥϯλΠϜ͕ଘࡏ͠ͳ͍ͨΊɺࣗલͰ࡞Βͳ͚Ε͍ ͚ͳ͍ͷ͕Ұఆଘࡏ͢Δ ➖ ݱঢ়ͩͱਖ਼ GAE ͱ͍͏ΑΓ GCE/GKE ͱಉ͡ IaaS GAE/Java ➕ GAESE Ͱ͋Γɺ͔ͭ Web Ͱͷݟ͕Ұ൪ଟ͘ଘࡏ͍ͯ͠Δ ➖ ݴޠ༷తʹߏ͕Ͱ͔͘ͳΓ͕ͪͰ͋Δ 15
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ٕज़બఆ 16 GAE/Go
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. GAE/Go GAE ඪ४αϙʔτ
⁃ GCS / BigQuery ͳͲ GCP ίϯϙʔωϯτͱͷ݁߹͕༻ҙ εέʔϧͳͲؚΊͯϑϧϚωʔδυ ଞࣾͰͷར༻࣮ͷᷚ͋Γ γϯϓϧͳߏͰ͔͚Δ ⁃ ϝΠϯϩδοΫʹूதͰ͖Δ ⁃ ίϯϙʔωϯτຖͷಛघߏ͕͋·Γ࡞ΒΕͳ͍ͷͰɺֶशίετ͕͘ͳ Δ 17
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ʙGAE/Go ͷ։ൃ͕࢝·Δ·Ͱ 18
ࣄྫհ
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ४උ Ұ൪ૣ͍ઃܭ·Ͱ2िؒ΄Ͳ༛༧͋Γ PortalSite
(GAEFE/Perl) Λ GAE/Go Ͱ࡞Γ͢ ⁃ ϋϚϦϙΠϯτͷѲ ⁃ ৽ن service ͷ࡞Γํͷࢀߟͱͯ͠ ⁃ εϜʔζͳ։ൃ͕ग़དྷΔΑ͏ͳඞཁ࠷ݶͷ४උ 19
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ※ ͳΜͰ࡞Γͨ͠ͷʁ PortalSite
ࠓޙਐԽ͍ͯ͘͜͠ͱ͕Θ͔͍ͬͯͨ ⁃ ͦͷࡍʹҧ͏ΞʔΩςΫνϟΛબ͍ͯ͠Δͱਓͷྲྀಈੑ͕͕Εͯ͠·͏ ࣮ࡍʹಈ͍͍ͯΔͷͩͬͨ ⁃ ઃܭ͕࣌ؒͳ͘ɺεϜʔζʹσϑΝΫτΛ࡞ΕΔ ΈΜͳͰϋϚΔͱඇޮͳͨΊɺ·ͣ̍ਓͰΨοπϦ Δ ※ ͦͷޙ GKE/Go GAE/Java ʹ͍ͭͯ࡞Γ͠ 20
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ʙγεςϜ্͕Γ 21 ࣄྫհ
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 20 Ҏ্ͷ services
22 Portal Web Cer,ficate Client User Token Connect Product Transac,on Dashboard No,fica,on Payment Accoun,ng CrashReport Applica,on Adver,sement Analy,cs Generic Token Metadata Signer OPE Sta,c Resource Proxy Google Front End ※ ·֦ͩେத
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 20 Ҏ্ͷ services
ߏ ⁃ ෦௨৴ଟ༻ ⁃ ΞʔΩςΫνϟతʹ GAE ʹ߹ͬͯͳ͍ͷ GAE ʹৼΓͬͨ • ※ GAE/Go ͷ RSA ॲཧʹ͋ΓͰɺ̍ݸ͚ͩ GAE/PHP ΛͬͯΔ ઃఆ ⁃ basic scaling ⁃ CPU όϯυҎ֎ instance type B2 • ։ൃڥͰ B1 / max_instance:1 23
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ʙݱঢ়Ͱͷ·ͱΊ 24 ࣄྫհ
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ݱࡏ·Ͱͷ݁Ռ·ͱΊ ։ൃޮ ⁃
Perl/Ruby ΛϝΠϯʹ͍ͬͯͨͷͰݴޠҠߦίετൃੜ ⁃ γϯϓϧͳߏͷͨΊɺҰॻ͍ͯΈΔͱͦΕҎ߱ಛʹͳ͠ ⁃ ݸਓ༻ͷ։ൃڥΛߏஙͰ͖ΔͳͲ(Datastoreڞ༻)ޮ্͕͕ͬͨ Πϯϑϥ ⁃ App deploy ͚ͩͰ৽͘͠ service Λ্ཱͪ͛ΕΔͷͰ͘͢͝ḿͬͨ ⁃ جຊతʹΠϯϑϥͱ͔ҙࣝͤͣɺϩδοΫʹूதͰ͖ͨ ⁃ GAE ͷجຊ௨Γʹ࡞͓͚ͬͯɺεέʔϦϯάউखʹͯ͘͠ΕΔɻ ϓϩδΣΫτޮ ⁃ service ؒͷਓͷҠߦ͕༰қͰϑϨΩγϒϧͳ։ൃܭը͕Մೳ 25
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࠓޙ 26
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ࠓޙ 1VC4VC %BUBqPXͳͲΛͲΜͲΜར༻͍ͯ͘͠
⁃ ઃܭͷෆ׳Εग़ͯ͠·͏ͨΊɺ جຊతʹࠓ·Ͱͱಉ༷ʹ͑ΔΑ͏ͳߏΛऔͬͨ ⁃ TaskQueue Λ༻͍ͨඇಉظॲཧɻॲཧͷΩοΫ Computing ෦Ͱ GAE/Go ͕࠷ળͷબͩͱࢥ͍ͬͯΔ ⁃ ҰํͰ GAE Ͱղܾग़དྷͳ͍Α͏ͳͷग़ͯ͘Δ(ConnectionషΓଓ͚ͱ ͔) ⁃ ͕ͨͬͯ͠ GKE ͳͲͷબࢶࠓޙ͔ͬ͠Γษڧ͍͔ͯ͠ͳ͚Ε͍͚ͳ ͍ͣ 27
Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 28