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
Developers.IO 2018 BaaSでゲームインフラをスピード構築
Search
jogannaoki
October 05, 2018
970
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Developers.IO 2018 BaaSでゲームインフラをスピード構築
jogannaoki
October 05, 2018
More Decks by jogannaoki
See All by jogannaoki
エンジニアの越境
jogannaoki
0
6.1k
[re:Growth 2019] Fargate for EKS
jogannaoki
0
1.2k
Kubernetesを使うことによるメリットと注意点
jogannaoki
0
2.2k
DeepRacer DeepDive
jogannaoki
0
1.1k
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Raft: Consensus for Rubyists
vanstee
141
7.6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
The SEO Collaboration Effect
kristinabergwall1
1
500
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
GraphQLとの向き合い方2022年版
quramy
50
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Writing Fast Ruby
sferik
630
63k
Discover your Explorer Soul
emna__ayadi
2
1.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
A Soul's Torment
seathinner
6
3k
Transcript
None
Naoki Jogan 2 Classmethod, Inc. AWS Business Unit Consulting Dev.
2018/10/05 #BB4ͰήʔϜΠϯϑϥΛεϐʔυߏங
ࣗݾհ • ιϦϡʔγϣϯΞʔΩςΫτ • ݄ೖࣾ ؒ4*FSͰ"1ΤϯδχΞ • ࠷ۙ͞Θ͍ͬͯΔαʔϏε (BNF-JGU
4VNFSJBO ؛رʢδϣΨϯφΦΩʣ "84ࣄۀຊ෦ίϯαϧςΟϯά෦
ຊʹೖΔલʹ ࣭
5 օ͞Μʹࠓ͔ΒεϚϗήʔϜΛ ։ൃͯ͠Β͍·͢ɻ
ڪཽϋϯλʔ
ΞδΣϯμ ᶃ ήʔϜͷ࢝Ίํ/༡ͼํ ᶄ ᶅ ᶆ GameSparksΛͬͨΒͲ͏ͳΔʁ GameLiftΛͬͨΒͲ͏ͳΔʁ AWSͷϕʔγοΫͳαʔϏεͰ
࣮ͨ͠Βʁ
ήʔϜͷ࢝Ίํ༡ͼํ 8
ήʔϜͷ࢝Ίํ ΞϓϦΠϯετʔϧ Ϣʔβʔొ νϡʔτϦΞϧ Ψνϟ ίϯςϯπ μϯϩʔυ
ؒͱݥ ήʔϜͷ༡ͼํɹʙϦηϚϥͷޙͷੈքʙ Ψνϟ ϥϯΩϯάͷ ্ҐΛࢦ͢
ػೳཧ
ඞཁͱͳΔػೳΈ ϑϩϯτ αʔόʔαΠυʢόοΫΤϯυʣ ϝΠϯίϯςϯπ ɾઓಆγεςϜ ɾάϥϑΟοΫ ɾαϯυ ΞΧϯτཧ ɾϢʔβʔཧ
ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ ɾαʔόʔཧ ίϯςϯπ৴
"84ͷϕʔγοΫͳαʔϏεͰ όοΫΤϯυΛ࣮ͨ͠Βʁ 13
γϯϓϧͳΞʔΩςΫνϟ
αʔόʔαΠυͰඞཁͳػೳ αʔόʔαΠυʢόοΫΤϯυʣ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ
ϚϧνϓϨΠϠʔ ɾαʔόʔཧ ίϯςϯπ৴
ඞཁͳ௨৴ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ ඇϦΞϧλΠϜ௨৴ ϦΞϧλΠϜ௨৴
όοΫΤϯυͷߏ ΞΧϯτཧ ิॿػೳ ΞΠςϜཧ ίϯςϯπ৴ ඇϦΞϧλΠϜ௨৴
όοΫΤϯυͷߏ ϚϧνϓϨΠϠʔ ϦΞϧλΠϜ௨৴
όοΫΤϯυͷߏ
͏গ͠ΧοίΑ͘
ඞཁͳ௨৴ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
όοΫΤϯυͷߏ ΞΧϯτཧ ิॿػೳ ΞΠςϜཧ Web API
όοΫΤϯυͷߏ ίϯςϯπ৴ ɾಈըϑΝΠϧ ɾαϯυ ɾetc Ωϟογϡ http௨৴(GET)
όοΫΤϯυͷߏ
AWSΛ࠷େݶʹ׆༻
όοΫΤϯυͷߏ ΞΧϯτཧ ิॿػೳ ΞΠςϜཧ Web API
όοΫΤϯυͷߏ
՝ AWSͷ͜ͱΒͳ͍ͱ Ͱ͖ͳ͍͜ͱ͕ଟ͍
ٙ ήʔϜͷڞ௨ػೳΛ ಠࣗͰ࣮͢Δඞཁ͋Δʁ
None
(BNF4QBSLTͱ ήʔϜʹಛԽͨ͠όοΫΤϯυαʔϏε ϢʔβʔཧೝূɺήʔϜΞΠςϜཧ ͳͲΛαʔόʔϨεͰ࣮ݱ
(BNF4QBSLTͰ࣮ݱͰ͖Δ͜ͱʢҰ෦ʣ جຊػೳ wϢʔβʔཧೝূ wϢʔβʔ՝ۚཧ wϑϨϯυཧ wνʔϜཧ wνϟοτ wϦʔμʔϘʔυ ήʔϜཁૉ
wήʔϜ௨՟ཧ wήʔϜΞΠςϜཧ wτϨʔσΟϯά wϩϏʔɾϚονϝΠΩϯά
ΞʔΩςΫνϟ ։ൃऀήʔϜΠϯϑϥΛཧ͢Δඞཁ͕ͳ͍
͜Ε͑ͦ͏ͳ
Ϣʔβʔొ / ೝূ
Ϣʔβʔొೝূ
38 demo
ϦʔμʔϘʔυ
ϦʔμʔϘʔυ 6TFS είΞ %FNPVTFS %FNPVTFS %FNPVTFS
%FNPVTFS
41 demo
Ψνϟ
Ψνϟ
44 demo
͑Δͳ͜Ε
GameSparksͷޮՌ
(BNF4QBSLTͷޮՌ (BNF4QBSLTΛར༻͢Ε wಛఆͷػೳʹ͍ͭͯήʔϜΠϯϑϥ Λҙࣝ͢Δ͜ͱͳ͘ར༻Ͱ͖Δ wར༻Մೳͳ"1*͕طʹ༻ҙ͞Ε͍ͯΔ ͨΊ։ൃίετμϯ
(BNF4QBSLTͰຬͨͤΔൣғ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
(BNF4QBSLTͰຬͨͤΔൣғ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
(BNF4QBSLTͰຬͨͤΔൣғ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
(BNF4QBSLTͰຬͨͤΔൣғ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
࡞ΓࠐΜͩΞϓϦέʔγϣϯ Λಈ͔͍ͨ͠ ՝
ϚϧνϓϨΠϠʔαʔόʔͷ ཧ͕͍͠ ՝
GameLift
(BNF-JGUͱ ϚϧνϓϨΠϠʔήʔϜαʔόʔΛ σϓϩΠɺૢ࡞ɺεέʔϦϯά͢ΔϚωʔδυαʔϏε
(BNF-JGUͰຬͨͤΔൣғ ΞΧϯτཧ ɾϢʔβʔཧ ɾϢʔβʔೝূ ΞΠςϜཧ ɾΨνϟ ิॿػೳ ɾϦʔμʔϘʔυ ϚϧνϓϨΠϠʔ
ɾαʔόʔཧ ίϯςϯπ৴ http௨৴(GET) ϦΞϧλΠϜॲཧ Web API
όοΫΤϯυͷߏ
ϚϧνϓϨΠϠʔήʔϜͷ௨৴
ϚϧνϓϨΠϠʔήʔϜͷ௨৴ w11ܕ wΫϥΠΞϯταʔόʔܕ
11ܕ
ΫϥΠΞϯταʔόʔܕ
ΫϥΠΞϯταʔόʔܕ ཧ͢ΔΑʂ
͏ͨΊͷ४උ
ඞཁͳΞϓϦέʔγϣϯͱ௨৴ C++ C# ήʔϜαʔόʔ ήʔϜΫϥΠΞϯτ AWS SDK C++ Java
.NET Go Python Ruby PHP JavaScript/Node.js Server SDK for C++ for Unreal Engine for C#
(BNF-JGUͷΞοϓϩʔυσϓϩΠ Server SDK for C# Ξοϓϩʔυ σϓϩΠ EC2 EC2
Server SDK EC2 Server SDK
66 demo
ॲཧΠϝʔδ
όοΫΤϯυͷߏ Ұङߦ͜͏ͥ Ұङߦ͜͏ͥ
όοΫΤϯυͷߏ ෦AΛ࡞ͬͯ ෦BΛ࡞ͬͯ
όοΫΤϯυͷߏ ෦AΛ࡞ͬͯ ෦BΛ࡞ͬͯ ͍Αʂ ෦A ෦B
όοΫΤϯυͷߏ ෦AʹೖΓ͍ͨ ෦BʹೖΓ͍ͨ ෦A ෦B
όοΫΤϯυͷߏ ෦AʹೖΓ͍ͨ ෦BʹೖΓ͍ͨ αʔόʔAʹೖͬͯ αʔόʔBʹೖͬͯ
όοΫΤϯυͷߏ ෦AʹೖΕͨ ෦BʹೖΕͨ ෦A ෦B
όοΫΤϯυͷߏ ෦C࡞ͬͯ ෦A ෦B
όοΫΤϯυͷߏ ෦A ෦B ෦C ͍Αʂ
76 demo
GameLiftͷޮՌ
(BNF-JGU (BNF-JGUΛར༻͢Ε wήʔϜαʔόʔͷεέʔϧΠϯΞτΛ؆୯ʹ࣮ ߦͰ͖Δ w্هʹ͏։ൃ͕ෆཁʹͳΓɺ͔ͭӡ༻අݮΔ wεϙοτΠϯελϯεΛར༻͢Εαʔόʔඅ༻ ͕ݮΔ
·ͱΊ 79
·ͱΊ #BB4Λར༻͢Ε w։ൃεϐʔυΛૣΊΔ͜ͱ͕Ͱ͖Δ wΠϯϑϥͷཧ͔Βղ์͞ΕΔ wΠϯϑϥΛ҆ఆӡ༻ͤ͞Δ͜ͱ͕Ͱ͖Δ
GameSparksɺGameLift Λ͏·͘׆༻ͯ͠ ޮΑ͘ήʔϜΛ։ൃ͠Α͏
82