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
88
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
280
CDK 利用者から見る CDK
hixi
3
990
ITS を支える 情報集約基盤 アーキテクチャ / ITS Tech Study #02
hixi
1
740
SIerIoT vol.7
hixi
1
530
AWS IoT を用いた DeNA オートモーティブアーキテクチャ / DeNA Techcon 2018 Houchi Hiroyoshi
hixi
1
34k
sake-game-gcp-5.pdf
hixi
0
86
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
518
39k
The Pragmatic Product Professional
lauravandoore
31
6.2k
A better future with KSS
kneath
235
17k
Optimising Largest Contentful Paint
csswizardry
30
2.8k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
36
2k
Happy Clients
brianwarren
96
6.6k
Documentation Writing (for coders)
carmenintech
65
4.3k
Build your cross-platform service in a week with App Engine
jlugia
228
18k
The Mythical Team-Month
searls
218
43k
What's new in Ruby 2.0
geeforr
340
31k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
45
4.8k
Rails Girls Zürich Keynote
gr2m
93
13k
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