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
1
910
Developers.IO 2018 BaaSでゲームインフラをスピード構築
jogannaoki
October 05, 2018
Tweet
Share
More Decks by jogannaoki
See All by jogannaoki
エンジニアの越境
jogannaoki
0
5.9k
[re:Growth 2019] Fargate for EKS
jogannaoki
0
1.1k
Kubernetesを使うことによるメリットと注意点
jogannaoki
0
2.1k
DeepRacer DeepDive
jogannaoki
0
990
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
400
Ethics towards AI in product and experience design
skipperchong
2
200
Measuring & Analyzing Core Web Vitals
bluesmoon
9
760
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
120
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1.1k
Crafting Experiences
bethany
1
53
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
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