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
サーバレスとマイクロサービスで変わるゲームサーバ開発
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kazutomo Niwa
October 01, 2016
Technology
6k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サーバレスとマイクロサービスで変わるゲームサーバ開発
Serverlessconf Tokyo 2016 で登壇した際に利用した資料です。
こちらもご参照ください →
https://gs2.io/
Kazutomo Niwa
October 01, 2016
More Decks by Kazutomo Niwa
See All by Kazutomo Niwa
Amazon Event Bridge による次世代の Pub/Sub
kazutomo
0
2k
DynamoDB のインデックス再編事例
kazutomo
2
1.1k
Production-ready Amazon Event Bridge
kazutomo
2
1.1k
もうそこまで迫っている! Cloud2.0 時代の開発
kazutomo
3
1.9k
Game Server Services ではじめる サーバ開発運用しないゲーム開発
kazutomo
1
7.7k
Cloud2.0時代のゲーム開発を支えるGS2
kazutomo
1
2.2k
Unityネットワーク完全に理解した.pdf
kazutomo
3
3.5k
サーバレスアプリケーションの監視・運用
kazutomo
13
6.8k
ゼロからサーバレスの先頭に追いつこう
kazutomo
25
12k
Other Decks in Technology
See All in Technology
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
370
スクラム祭り2026福井トラック_閉じたループから価値のスパイラルへ
kc_nakanishi
0
190
CTO Night & Day Morning Session_AI-DLC:生成 AI 時代の開発プロセス変革
pikosan0000
0
120
書き手が人でもAIでも正しくなる道、SREを埋め込んだDeveloper Platform / tech drivers day8
chmikata
4
820
新卒エンジニア、 介護士になる
ryu1013
1
380
Flutter Webを「SDK」として配る — 50以上のゲームを支える埋め込みアーキテクチャ
masayukisuda
0
150
Jev の中身は50行で再現できる。でも本物との差はどこにあるのか
hisuzuya
0
170
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
160
バイブコーディングの特徴と「コケて直す」ループ
happysamurai294
0
120
DevelopersIO2026 -バックアップは“消されないこと”が9割-
yoshida0129
0
440
Claude Code on Bedrock で統制をかける小ネタ集/claude-code-bedrock-governance-tips
emiki
1
13k
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
420
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
2
12k
The browser strikes back
jonoalderson
0
1.9k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
sira's awesome portfolio website redesign presentation
elsirapls
0
470
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
59k
Faster Mobile Websites
deanohume
310
32k
Mind Mapping
helmedeiros
1
410
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Ethics towards AI in product and experience design
skipperchong
2
450
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Transcript
αʔόϨεͱϚΠΫϩαʔϏεͰมΘΔ ήʔϜαʔό։ൃ 4FSWFSMFTT$POG5PLZP (BNF4FSWFS4FSWJDFTגࣜձࣾ දऔకࣾ$&0୮Ӌ Ұஐ
ࣗݾհ (BNF4FSWFS4FSWJDFTגࣜձࣾ ݄ۀ දऔకࣾ$&0୮Ӌ ҰஐʢʹΘ ͔ͣͱʣ גࣜձࣾηΨೖࣾ ܞଳి͚ήʔϜɾαʔό։ൃʹैࣄ
ఱಊגࣜձࣾೖࣾ ϙέϞϯɾϚϦΦΧʔτΛ͡Ίͱͨ͠ ήʔϜαʔό։ൃɾӡ༻ʹैࣄ ͖ͳ"84αʔϏε"1*(BUFXBZ -BNCEB %ZOBNP%#
Game Server Services(GS2) とは εϚϗήʔϜϒϥβήʔϜͷඞཁͱ͢Δػೳͷ͏ͪɺ • ϚονϝΠΩϯά • ϥϯΩϯά •
ϝʔϧϘοΫεʢϓϨθϯτϘοΫεʣ • ελϛφཧ ͱ͍ͬͨɺΑ͋͘ΔػೳΛ .JDSP4FSWJDFTԽ͠ɺ 4FSWFSMFTTͰઃܭɾ࣮͠ɺҰ࣌ؒԁʙͰར༻Ͱ͖Δͱ ͍͏"84ͷΑ͏ͳαʔϏεͰ͢ɻ
(BNF4FSWFS4FSWJDFT (4 ʹ͍ͭͯ ઌαΠτΛެ։ IUUQTHTJP ݄தʹ࣮ࢪ༧ఆͷϕ ʔλςετࢀՃऀΛืूத ຊͷηογϣϯ (4ΛαʔόϨεͰ࣮ݱ͢Δʹࢸͬͨ ܦҢ࣮ྫΛݩʹ͍ͯ͠·͢
(4ͷઃཱʹࢸͬͨܦҢ ίϯγϡʔϚήʔϜͷ։ൃʹ͓͍ͯɺήʔϜαʔόϓϥο τϑΥʔϚʔ͕ఏڙ͢Δ4%,ͷҰ෦ɻ ˠεϚʔτϑΥϯͰͦ͜·Ͱ໘ݟͯ͘Εͳ͍ɻ ֤͕ࣾࣅͨΑ͏ͳαʔόγεςϜΛ։ൃͯ͠͠·͍ͬͯΔɻ ˠوॏͳ։ൃϦιʔεΛ࿘අ͍ͯ͠Δɻ ήʔϜαʔόϓϥοτϑΥʔϚʔ͕։ൃ͍ͯͨͨ͠Ίɺή ʔϜ։ൃऀήʔϜαʔό։ൃͷϊϋ͕গͳ͍ɻ ˠͩ·ͩ͠·͠։ൃ͍ͯ͠Δݱଟ͍ɻ
(4ͱ αʔόϨεΞʔΩςΫνϟ ՝ࣗମϒϥβήʔϜ͔ΒωΠςΟϒήʔϜʹτϨϯυ ͕γϑτͯ͠͠Β͘ܦͬͨ͋ͨΓ͔Βײ͍ͯͨ͡ɻ ˠ(4ͷߏࣗମਵલ͔Β͋ͬͨɻ ͳͥࠓ·ͰىۀʹࢸΒͳ͔͔ͬͨʁ ˠαʔϏεΛཱͤ͞ΔͨΊͷ՝͕͋ͬͨɻ సػʁ ˠࡢ݄ͷ"1*(BUFXBZͷൃදɻ ˠಉ݄ʹαʔϏεͷ։ൃΛ։࢝ɻ
ͳͥαʔόϨε՝Λղܾ͢Δͱࢥͬͨͷ͔ʁ • εέʔϥϏϦςΟͷ֬อ • Մ༻ੑͷ֬อ • อकੑͷ֬อ • Ձ֨༏Ґੑͷ֬อ
εέʔϥϏϦςΟɾՄ༻ੑ αʔόϨε࣮ߦڥͷίϯςφ͕ఆظతʹഁغ͞ΕΔɻ ˠγεςϜ *NNVUBCMFͰ 4UBUFMFTTͳͷͱͳΔɻ *NNVUBCMFͰ 4UBUFMFTTͳγεςϜʹͳΔͱԿ͕خ͍͠ʁ ˠࢄॲཧ͕ՄೳͱͳΓɺεέʔϥϒϧʹɻ ˠαʔόোʹର͢Δੑ͕ڧ͘ͳΔɻ ήʔϜαʔόࣄલͷΞΫηεͷ༧͕͘͠ɺώοτ͠
ͨࡍʹඇৗʹεέʔϧ͕େ͖͘ҟͳΔɻ ˠεέʔϥϏϦςΟඇৗʹॏཁͳཁૉɻ
อकੑ -BNCEBͰɺσʔληϯλʔ "; ʹো͕ൃੜͯ͠ɺ ͦͷ";ͰॲཧΛܧଓ͠ͳ͘͢Δɻ෮چޙʹॲཧରʹ͢ɻ ͱ͍ͬͨΦϖϨʔγϣϯ "NB[PO͕ߦͬͯ͘ΕΔɻ ˠαʔόϨεԽ͢Δ͜ͱͰɺ ΠϯϑϥͷϚωʔδϝϯτ͔Β։์͞ΕΔɻ ܾͯ͠ϦιʔεϦονͰͳ͍(4ʹͱͬͯɺΠϯϑϥͷอ
कཧΛ"NB[POʹͤΔ͜ͱ͕ग़དྷΔͱ͍͏ͷେ͖ͳϝ Ϧοτɻ
Ձ֨༏Ґੑ ࠓ&$ͳͲԾαʔόͷΠϯελϯεΛௐ͍ͯ͠Δɻ ˠαʔόϨε࣮ࡍʹ͕࣮ؔߦ͞Εͨ࣌ؒʹରͯ͠ ՝ۚ͞ΕΔͨΊɺΩϟύγςΟίϯτϩʔϧෆཁɻ -BNCEBؔΛ࣮ߦ͢ΔίϯςφʹׂΓͯΔϝϞϦ༰ྔ $16ϦιʔεͳͲઃఆͰ͖Δɻ ˠؔͷಛੑʹ߹ΘͤͨϦιʔεׂ͕ߦͳ͑Δɻ ैདྷͷ։ൃख๏Ͱઃܭ͞ΕͨγεςϜͱൺֱͯ͠Ḯ৭ͷͳ ͍Ձ֨ଳͰαʔϏε͕ఏڙͰ͖ͨɻ
ͳͥ (4ϚΠΫϩαʔϏεʹͨ͠ͷ͔ʁ • γεςϜͷݟ௨͕͠ྑ͘ͳΔ • αʔϏε͕ૄ݁߹ͳͨΊɺ෦తʹར༻Մೳ • ςετ͕͍͢͠
γεςϜͷݟ௨͕͠ྑ͘ͳΔ ػೳΛࡉԽ͢Δ͜ͱͰɺγεςϜͷׂ͕࣋ͭ໌֬ʹͳΔɻ ׂ͕໌֬ʹͳΔͱ͍͏͜ͱɺΠϯϓοτɾΞτϓοτ Λ૾͘͢͠ͳΔͨΊɺαʔϏεΛγϯϓϧʹݟͤΔ͜ͱ ͕Ͱ͖ͨɻ
αʔϏε͕ૄ݁߹ͳͨΊɺ෦తʹར༻Մೳ γεςϜؒૄ݁߹ͳͨΊɺ(4ͷఏڙ͢ΔαʔϏεͷ͏ ͪɺͱ͋ΔͭͷαʔϏε͚ͩར༻͢Δɻͱ͍͏Α͏ͳ͜ͱ ͕͓͜ͳ͑Δɻ ݁߹ͷߴ͍γεςϜͩͱɺࣗελϛφͷཧػೳΛ ͍͍͚ͨͩͳͷʹɺԿނ͔(4ͷΞΧϯτγεςϜར ༻͠ͳ͚Εར༻Ͱ͖ͳ͍ɻͱ͍͏Α͏ͳࣗ༝ͷ͍αʔ Ϗεʹͳͬͯ͠·͍ͬͯͨͰ͠ΐ͏ɻ
ςετ͕͍͢͠ • γϯϓϧͳγεςϜςετΛॻ߲͘ݶΒΕ·͢ • ૄ݁߹ͳγεςϜςετ͕ॻ͖͍͢Ͱ͢ • ϚΠΫϩαʔϏεΛ࠾༻͢Δ͜ͱͰɺ(4ͷΞϓϦέʔγ ϣϯϨΠϠʔͷ࣭Λอͭ͜ͱʹͭͳ͕͍ͬͯ·͢
(4ΛαʔϏε͢Δ্Ͱͷෆ҆ ओ࠵ͷ٢ా͞Μ͔ΒʮαʔόϨεʹίϛοτͨ͠αʔϏεΛ ఏڙ͢Δ͜ͱʹෆ҆ͳ͔͔ͬͨʁʯͱฉ͔Εͨɻ ˠ࠷ॳރΕͯͳ͍͕ނʹൃੜ͢Δ͋Δ͔ɻ ͝Ζɺ4Λ࠷ॳʹ࠾༻͢Δͱ͖ʹɺ͍͔ͭαʔϏ ε͕ऴΘΔΜ͡Όͳ͍͔ʁͱΛͨ͜͠ͱ͕͋Δɻ ˠࠓͰͦΜͳ͜ͱΛؾʹ͢Δਓ͍ͳ͍ αʔόϨεಉ͡Ͱʁ
αʔόϨεͷ՝ • ཁ݅ʹΑͬͯݴޠΛ͍͚ͳ͚ΕͳΒͳ͍ • εςʔτϑϧͳγεςϜΛ։ൃ͢Δͷ͍͠ • ϑϨʔϜϫʔΫ͕·ͩະख़
ཁ݅ʹΑͬͯݴޠΛ͍͚ͳ͚ΕͳΒͳ͍ -BNCEB 1ZUIPO KBWBTDSJQU +BWBͷݴޠ͕ར༻Ͱ͖Δɻ ˠ࠷ॳ+BWBͰ։ൃ͠Α͏ͱࣦͯ͠ഊͨ͠ +BWBίϯςφىಈ࣌ͷΦʔόʔϔου͕ͱͯେ͖͍ɻ ˠʙඵͷىಈ࣌ؒɺϝϞϦফඅྔେ͖͍ +BWBʹྑ͍͕͋Δɻ ˠॲཧ͕ѹతʹ͍ɻ
"1*ͷडʹ1ZUIPOKBWBTDSJQUɻόονॲཧ+BWBɻ
εςʔτϑϧͳγεςϜΛ։ൃ͢Δͷ͍͠ αʔόϨεঢ়ଶΛ࣋ͭ͜ͱ͕Ͱ͖ͳ͍ɻ ˠ࣋ͭͳΒ%#,74ͳͲΛར༻͢Δ͜ͱʹɻ ֎෦ࢿݯͰߴ͔ͭίετײͷ͍͍ํ๏͕ͳ͍ɻ ˠ%ZOBNP%#ಡΈॻ͖ߴͳ͕Β มͷಡΈॻ͖Ϩϕϧͷ*0Λཁٻ͢ΔͱߴՁɻ ˠ.FNDBDIF3FEJTεέʔϧͮ͠Β͍ɻ ϑΝΠϧγεςϜΛ௨ͯ͠ঢ়ଶΛ࣋ͭʁ ˠίϯςφ͕ഁغ͞ΕΔͱҰॹʹফ͑ͯ͠·͏
ϑϨʔϜϫʔΫ͕·ͩະख़ ࠓͰͦ͜ɺز͔ͭͷϓϩμΫτ͕ग़͖͍ͯͯ·͢ɻ͔͠͠ɺ ·ͩ·ͩະख़ɻ (4Ͱ࣌ظతʹ͑ΔϓϩμΫτ͕ଘࡏ͠ͳ͔ͬͨͨΊɺ શʹࣗલͷϑϨʔϜϫʔΫΛར༻ɻ ࠓޙɺαʔόϨεͰͷγεςϜ։ൃ͕ҰൠతͳͷʹͳΔͨ ΊʹϑϨʔϜϫʔΫͷඋ͕ඞཁͱͳΓͦ͏ɻ
αʔόϨεͷະདྷ ԾԽͷྲྀΕͷ࣍ίϯςφͰͳ͘αʔόϨεʁ ˠԾԽௐୡظؒͷॖͰීٴ *BB4ͷొ ˠϋʔυΣΞͷཧ͔Β։์ ˠඞཁͳͱ͖ʹඞཁͳ͚ͩαʔό͕खʹೖΔ ίϯςφͲ͏ʁ αʔόϨεΞΠυϧϦιʔεશʹͳ͘ͳΔɻ
αʔόϨεͱϚΠΫϩαʔϏεͰมΘΔήʔϜαʔό։ൃ • Πϯϑϥอकʹର͢ΔཁٻϦιʔεͷݮ • ༨Ϧιʔεཧ͔Βͷ։์ • ίϞσΟςΟԽͨ͠ػೳͷ࠶ར༻ੑ্ • ࣭৴པੑͷ্
Πϯϑϥอकʹର͢ΔཁٻϦιʔεͷݮ αʔόϨεԽ͢Δ͜ͱͰɺΠϯϑϥϨΠϠʔͷอकΛ "NB[PO (PPHMFʹͤΔ͜ͱ͕Ͱ͖ΔΑ͏ʹͳΔͨΊɺ ήʔϜ։ൃݱͰෆ͕ͪ͠ͳΠϯϑϥΤϯδχΞʹର͢Δ ཁٻϦιʔε͕ݮͰ͖·͢
༨Ϧιʔεཧ͔Βͷ։์ ఆ͞ΕΔΞΫηεΛࡹ͖ɺকདྷͷΞΫηε૿ʹඋ͑ͨα ʔόͷ֬อɻ͜ΕΛ࣮ݱ͢ΔͨΊʹΞΫηεͷ༧ଌ αʔόࢿݯͷௐୡۀ͕ൃੜɻ ˠαʔόϨεͰॏཁੑ͘ͳΔɻ ϐʔΫ࣌ؒଳͱͦ͏Ͱͳ͍࣌ؒଳͷΪϟοϓʹΑͬͯੜ·Ε ΔΞΠυϧɻ ˠΦʔτεέʔϦϯάͷΈͷඞཁͩͬͨɻ ˠαʔόϨεͰඞཁͳ͘ͳΔɻ
ίϞσΟςΟԽͨ͠ػೳͷ࠶ར༻ੑ্ ήʔϜαʔόͷதʹ͓ଋతͳػೳ͕ଟଘࡏ͠·͢ ͦ͏͍ͬͨػೳϚΠΫϩαʔϏεԽ͢Δ͜ͱͰɺԿ࠶ ։ൃ͢Δ͜ͱΛආ͚Δ͜ͱ͕Ͱ͖·͢ ͜ΕʹΑͬͯɺΑΓήʔϜΛ໘ന͘͢ΔͨΊͷݻ༗ͷػೳͷ ։ൃʹΑΓϦιʔεΛׂ͘͜ͱ͕ग़དྷΔΑ͏ʹͳΓ·͢
࣭ɾ৴པੑͷ্ ςετ͕͘͢͠ͳͬͨΓɺεέʔϥϏϦςΟɾՄ༻ੑ͕ ্͢Δ͜ͱͰɺγεςϜશମͷ࣭৴པੑ্͕ɻ • εύήοςΟԽͯ͠ςετ͕ࠔ • ϋʔυΣΞ͕ނোɺωοτϫʔΫোʹΑͬͯαʔϏε͕ఀࢭ • ٸܹͳΞΫηε૿ՃʹΞϓϦέʔγϣϯΞʔΩςΫνϟ͕͑ΒΕͳ͍ ͜ͷΑ͏ͳɺαʔόϨεͱϚΠΫϩαʔϏεʹΑͬͯɺ
ΑΓ؆୯ͳʹͳΔɻ
࠷ޙʹ αʔόϨε࣍ͳΔτϨϯυͱͳΔՄೳੑ͕ߴ͍ ˠ͔͠͠ɺαʔόϨεۜͷؙͰͳ͍ ͨͱ͑ɺεςʔτϑϧͳγεςϜʹ͍͍ͯͳ͍ ˠແཧ࣮͍͍ͯͯ͜͠͠ͱͳ͍ దࡐదॴɺ͍ॴΛݟۃΊΔ͜ͱେࣄ
એ (4ͰεϚϗήʔϜϒϥβήʔϜͷඞཁͱ͢Δػೳ ͷதͰίϞσΟςΟԽͨ͠෦ΛϚΠΫϩαʔϏεԽ͠ɺα ʔόϨεͰઃܭɾ࣮ͨ͠αʔϏεɻ ˠ͜Ε·Ͱ͖ͯͨ͠Α͏ͳԸܙ͕ಘΒΕΔɻ ࣗΒαʔόϨεԽʹऔΓΉલʹҰɺ(4ͷ࠾༻ݕ౼ ͍͚ͨͩΕɻ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ IUUQTHTJP ϕʔλςετࢀՃऀืूதʂ