SlideShare a Scribd company logo
AWS Gaming Solutions | GDC 2014
Scalable Gaming with AWS
Or, How to go from 1,000 to 1,000,000 users without starting over
Nate Wiger @nateware | Principal Gaming Solutions Architect
AWS Gaming Solutions | GDC 2014
What's In It For Me?
• Why AWS for Games?
• Core Game Backend
• Scaling Data with DynamoDB
• Low-Latency Multiplayer with C3
• Mobile Push Notifications
AWS Gaming Solutions | GDC 2014
Gratuitous Logo Slide
AWS Gaming Solutions | GDC 2014
Traditional: Rigid AWS: Elastic
Servers
Demand
Capacity
Excess Capacity
Wasted $$
Demand
Unmet Demand
Upset Players
Missed Revenue
Pay As You Scale
AWS Gaming Solutions | GDC 2014
Pay As You Scale
AWS Gaming Solutions | GDC 2014
10 Regions
51 CloudFront POPs
Continuous Expansion
Global Is Good
AWS Gaming Solutions | GDC 2014
AWS Gaming Solutions | GDC 2014
Game Backend Concepts
• Think in terms of API's
• Get friends, leaderboard
• HTTP+JSON
• Binary asset data
• Mobile push
• Multiplayer servers
AWS Gaming Solutions | GDC 2014
Core Game Backend
ELB
S3
• Choose Region
• Elastic Load Balancer
• Two Availability Zones
• EC2 for App
• RDS Database
• Multi-AZ
• S3 for Game Data
• Assets
• UGC
• Analytics
Region
AWS Gaming Solutions | GDC 2014
Scale It Way Out
ELB
S3
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
EC2EC2EC2
Region
AWS Gaming Solutions | GDC 2014
Scale It Way Out
ELB
S3
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis EC2EC2EC2
Region
AWS Gaming Solutions | GDC 2014
Scale It Way Out
CloudFront
CDN
ELB
S3
EC2EC2EC2
Region
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis
• CloudFront CDN
• DLC, Assets
• Game Saves
• UGC
AWS Gaming Solutions | GDC 2014
Big picture slide
AWS Gaming Solutions | GDC 2014
Elastic Beanstalk
• Managed Container
• Git Push or Zip Upload
• ELB, EC2, RDS
• Web Dashboard
• Same Performance
• So Yeah, Use It
AWS Gaming Solutions | GDC 2014
Hill Of Beans
ELB
S3
• Beanstalk Manages
• ELB
• EC2
• Auto Scaling
• Monitoring
• RDS
• Add Other Services
• S3
• CloudFront
• ElastiCache
• SNS
EC2
Elastic Beanstalk Container
EC2
CloudFront
CDN
AWS Gaming Solutions | GDC 2014
AWS Gaming Solutions | GDC 2014
More CLI bell
cd MyGameAPI
eb init
eb start
vi app.rb
require 'sinatra'
get '/hello.json' do
{message: "Hello World!"}
End
git commit –m "app updates" app.rb
git aws.push
• Initialize everything
• Write code
• Commit to git
• Push to Beanstalk
• Coffee / Beer
• Repeat
AWS Gaming Solutions | GDC 2014
AWS Gaming Solutions | GDC 2014
Region
Writing Is Painful
Availability
Zone A
Availability
Zone B
S3
EC2
• Games are Write Heavy
• Caching of Limited Use
• Key Value Key Value
• Binary Structures
• Database = Bottleneck
ELB
EC2
CloudFront
CDN
AWS Gaming Solutions | GDC 2014
Sharding (Not Fun)
Availability
Zone A
C2
AWS Gaming Solutions | GDC 2014
DynamoDB
Availability
Zone A
Availability
Zone B
S3
• NoSQL Data Store
• Fully-Managed
• Highly Available
• PUT/GET Keys
• Secondary Indexes
• Provisioned Throughput
• Auto Scaling
EC2 EC2
ELB
CloudFront
CDN
Elastic Beanstalk Container
AWS Gaming Solutions | GDC 2014
Leaderboard in DynamoDB
• Hash key = Primary key
• Range key = Sub key
• Others attributes are
unstructured, unindexed
• So… How to sort based
on Top Score?
AWS Gaming Solutions | GDC 2014
Leaderboard with Secondary Indexes
• Create a secondary index!
• Set hash key to Game Level
• Set range key to Top Score
• Can now query by Level,
Sorted by Top Score
• Handles any (sane) gaming
use case
AWS Gaming Solutions | GDC 2014
Python Leaderboard
table = Table('scores', schema=[
HashKey('user'),
RangeKey('level')
],
throughput={
'read': 5, 'write': 15
}, global_indexes=[
GlobalAllIndex('highscore',
parts=[
HashKey('level'),
RangeKey('score', data_type=NUMBER)
],
throughput={
'read': 5, 'write': 15
}
)
])
new_score =
Item(table, data={
'user': user,
'level': level,
'score': score
})
new_score.save()
topscores = table.query(index='highscore')
for ts in topscores:
print(ts['user'], ts['score'])
AWS Gaming Solutions | GDC 2014
Big picture slide
AWS Gaming Solutions | GDC 2014
G2 Instance
• NVIDIA Kepler GPU
• Game Streaming
• Rendering Assets
• Build Servers
• AppStream!
AWS Gaming Solutions | GDC 2014
C3 Instance
• High packets per second
• Very low latency, jitter
• Intel Ivy Bridge CPU
• SSD's
• Built for games
• 15 cents / hour
AWS Gaming Solutions | GDC 2014
Enhanced Networking (SR-IOV)
Before:
Hypervisor
After:
Hardware
AWS Gaming Solutions | GDC 2014
Multiplayer Game Servers
EC2EC2 EC2
Region
• Beanstalk App
• Core Session
• Matchmaking
• Public Server Tier
• Direct Client Socket
• Scale on Players
• CloudFront CDN
• DLC, Assets
• Game Saves
• UGC
EC2
AWS Gaming Solutions | GDC 2014
Multiplayer Game Servers
① Login via Beanstalk
② Request Matchmaking
③ Get Game Server IP
EC2EC2 EC2
Region
EC2
AWS Gaming Solutions | GDC 2014
Multiplayer Game Servers
① Login via Beanstalk
② Request Matchmaking
③ Get Game Server IP
④ Connect to Server
⑤ Pull Down Assets
⑥ Other Players Join
EC2EC2 EC2
Region
EC2
AWS Gaming Solutions | GDC 2014
Multiplayer Game Servers
① Login via Beanstalk
② Request Matchmaking
③ Get Game Server IP
④ Connect to Server
⑤ Pull Down Assets
⑥ Other Players Join
⑦ Game Ends
⑧ Update Stats
EC2EC2 EC2
Region
EC2
AWS Gaming Solutions | GDC 2014
Multi-Region Game Servers
E2
Region
EC2
Region
AWS Gaming Solutions | GDC 2014
Big picture slide
AWS Gaming Solutions | GDC 2014
Messages and Queues
ELB
S3
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
EC2EC2EC2
Region
AWS Gaming Solutions | GDC 2014
Messages and Queues
ELB
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
EC2EC2EC2
Region
EC2
PUB
AWS Gaming Solutions | GDC 2014
Messages and Queues
ELB
EC2EC2EC2
Region
EC2EC2
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS
• Background Tasks
• Avatar Resizing
• Score Processing
AWS Gaming Solutions | GDC 2014
Messages and Queues
ELB
EC2EC2EC2
Region
EC2EC2
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS
• Background Tasks
• Avatar Resizing
• Score Processing
AWS Gaming Solutions | GDC 2014
Messages and Queues
ELB
EC2EC2EC2
Region
EC2EC2
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS
• Background Tasks
• Avatar Resizing
• Score Processing
PUB
AWS Gaming Solutions | GDC 2014
Wrap It Up Already
• Start Simple With Beanstalk
• Go Directly to DynamoDB, Do Not Pass Go
• CloudFront + S3 for Download and Upload
• Add Multiplayer - Hybrid
• Use the EC2 C3 Instance
• SQS to Decouple and Scale
AWS Gaming Solutions | GDC 2014
Cheers – Nate Wiger @nateware

More Related Content

What's hot

Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)
Amazon Web Services
 
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
Amazon Web Services Korea
 
Aws overview
Aws overviewAws overview
Aws overview
abhijeetrajpurohit29
 
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나 Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
Amazon Web Services Korea
 
Amazon Aurora: Under the Hood
Amazon Aurora: Under the HoodAmazon Aurora: Under the Hood
Amazon Aurora: Under the Hood
Amazon Web Services
 
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
Amazon Web Services Japan
 
Development and Test on AWS
Development and Test on AWSDevelopment and Test on AWS
Development and Test on AWS
Amazon Web Services
 
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
Amazon Web Services
 
Infrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
Infrastructure is code with the AWS CDK - MAD312 - New York AWS SummitInfrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
Infrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
Amazon Web Services
 
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
Amazon Web Services
 
AWS CDK Introduction
AWS CDK IntroductionAWS CDK Introduction
AWS CDK Introduction
Kasun Dilunika
 
Capacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterCapacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB Cluster
MongoDB
 
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
 
Introduction to Amazon Aurora
Introduction to Amazon AuroraIntroduction to Amazon Aurora
Introduction to Amazon Aurora
Amazon Web Services
 
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
Amazon Web Services
 
Introduction to EC2
Introduction to EC2Introduction to EC2
Introduction to EC2
Mark Squires
 
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019 높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
Amazon Web Services Korea
 
Batch Processing with Containers on AWS - June 2017 AWS Online Tech Talks
Batch Processing with Containers on AWS -  June 2017 AWS Online Tech TalksBatch Processing with Containers on AWS -  June 2017 AWS Online Tech Talks
Batch Processing with Containers on AWS - June 2017 AWS Online Tech Talks
Amazon Web Services
 
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
Amazon Web Services Korea
 
[AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
 [AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵 [AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
[AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
Amazon Web Services Korea
 

What's hot (20)

Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)Amazon Relational Database Service (Amazon RDS)
Amazon Relational Database Service (Amazon RDS)
 
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
AWS 빅데이터 아키텍처 패턴 및 모범 사례- AWS Summit Seoul 2017
 
Aws overview
Aws overviewAws overview
Aws overview
 
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나 Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: AWS 월간 웨비나
 
Amazon Aurora: Under the Hood
Amazon Aurora: Under the HoodAmazon Aurora: Under the Hood
Amazon Aurora: Under the Hood
 
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
 
Development and Test on AWS
Development and Test on AWSDevelopment and Test on AWS
Development and Test on AWS
 
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
Migrating Databases to the Cloud with AWS Database Migration Service (DAT207)...
 
Infrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
Infrastructure is code with the AWS CDK - MAD312 - New York AWS SummitInfrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
Infrastructure is code with the AWS CDK - MAD312 - New York AWS Summit
 
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
Module 1: Introduction to the AWS Cloud - AWSome Day Online Conference 2019
 
AWS CDK Introduction
AWS CDK IntroductionAWS CDK Introduction
AWS CDK Introduction
 
Capacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterCapacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB Cluster
 
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
 
Introduction to Amazon Aurora
Introduction to Amazon AuroraIntroduction to Amazon Aurora
Introduction to Amazon Aurora
 
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
(SDD415) NEW LAUNCH: Amazon Aurora: Amazon’s New Relational Database Engine |...
 
Introduction to EC2
Introduction to EC2Introduction to EC2
Introduction to EC2
 
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019 높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
높은 가용성과 성능 향상을 위한 ElastiCache 활용 팁 - 임근택, SendBird :: AWS Summit Seoul 2019
 
Batch Processing with Containers on AWS - June 2017 AWS Online Tech Talks
Batch Processing with Containers on AWS -  June 2017 AWS Online Tech TalksBatch Processing with Containers on AWS -  June 2017 AWS Online Tech Talks
Batch Processing with Containers on AWS - June 2017 AWS Online Tech Talks
 
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
 
[AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
 [AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵 [AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
[AWS Dev Day] 실습워크샵 | Amazon EKS 핸즈온 워크샵
 

Similar to AWS Architecture - GDC 2014

Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014
Nate Wiger
 
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
Amazon Web Services
 
AWS Game Analytics - GDC 2014
AWS Game Analytics - GDC 2014AWS Game Analytics - GDC 2014
AWS Game Analytics - GDC 2014
Nate Wiger
 
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
Amazon Web Services Korea
 
Gaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit DublinGaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit Dublin
Ian Massingham
 
Gaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit DublinGaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit Dublin
Amazon Web Services
 
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDKGDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
Nate Wiger
 
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Openbar
 
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
Amazon Web Services Korea
 
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Amazon Web Services
 
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
Seungmin Shin
 
KGC 2013 AWS Keynote
KGC 2013 AWS KeynoteKGC 2013 AWS Keynote
KGC 2013 AWS Keynote
Amazon Web Services Korea
 
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
Amazon Web Services
 
AWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - SlidesAWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - Slides
TobyWilman
 
Twitch-ready 3D-Games with Amazon Lumberyard and GameLift
Twitch-ready 3D-Games with Amazon Lumberyard and GameLiftTwitch-ready 3D-Games with Amazon Lumberyard and GameLift
Twitch-ready 3D-Games with Amazon Lumberyard and GameLift
Amazon Web Services
 
Building a scalable API with Grails
Building a scalable API with GrailsBuilding a scalable API with Grails
Building a scalable API with Grails
Tanausu Cerdeña
 
Serverless Culture
Serverless CultureServerless Culture
Serverless Culture
AWS User Group Bengaluru
 
Deploying a Low-Latency Multiplayer Game Globally: Loadout
Deploying a Low-Latency Multiplayer Game Globally: Loadout Deploying a Low-Latency Multiplayer Game Globally: Loadout
Deploying a Low-Latency Multiplayer Game Globally: Loadout
Amazon Web Services
 
Write retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with Azure
Marco Parenzan
 
re:Invent re:cap 2020
re:Invent re:cap 2020re:Invent re:cap 2020
re:Invent re:cap 2020
Kaushik Mohanraj
 

Similar to AWS Architecture - GDC 2014 (20)

Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014Scalable Gaming with AWS - GDC 2014
Scalable Gaming with AWS - GDC 2014
 
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
AWS Webcast - Database in the Cloud Series - Scalable Games and Analytics wit...
 
AWS Game Analytics - GDC 2014
AWS Game Analytics - GDC 2014AWS Game Analytics - GDC 2014
AWS Game Analytics - GDC 2014
 
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
Gaming on AWS - 1. AWS로 글로벌 게임 런칭하기 - 장르별 아키텍처 중심
 
Gaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit DublinGaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit Dublin
 
Gaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit DublinGaming in the Cloud at Websummit Dublin
Gaming in the Cloud at Websummit Dublin
 
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDKGDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
GDC 2015 - Game Analytics with AWS Redshift, Kinesis, and the Mobile SDK
 
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
Openbar Kontich // Google Cloud: past, present and the (oh so sweet) future b...
 
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
 
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
 
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
 
KGC 2013 AWS Keynote
KGC 2013 AWS KeynoteKGC 2013 AWS Keynote
KGC 2013 AWS Keynote
 
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A...
 
AWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - SlidesAWS vs Azure vs Google (GCP) - Slides
AWS vs Azure vs Google (GCP) - Slides
 
Twitch-ready 3D-Games with Amazon Lumberyard and GameLift
Twitch-ready 3D-Games with Amazon Lumberyard and GameLiftTwitch-ready 3D-Games with Amazon Lumberyard and GameLift
Twitch-ready 3D-Games with Amazon Lumberyard and GameLift
 
Building a scalable API with Grails
Building a scalable API with GrailsBuilding a scalable API with Grails
Building a scalable API with Grails
 
Serverless Culture
Serverless CultureServerless Culture
Serverless Culture
 
Deploying a Low-Latency Multiplayer Game Globally: Loadout
Deploying a Low-Latency Multiplayer Game Globally: Loadout Deploying a Low-Latency Multiplayer Game Globally: Loadout
Deploying a Low-Latency Multiplayer Game Globally: Loadout
 
Write retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with Azure
 
re:Invent re:cap 2020
re:Invent re:cap 2020re:Invent re:cap 2020
re:Invent re:cap 2020
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Recently uploaded

Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
Claudio Di Ciccio
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 

Recently uploaded (20)

Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
CAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on BlockchainCAKE: Sharing Slices of Confidential Data on Blockchain
CAKE: Sharing Slices of Confidential Data on Blockchain
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 

AWS Architecture - GDC 2014

  • 1. AWS Gaming Solutions | GDC 2014 Scalable Gaming with AWS Or, How to go from 1,000 to 1,000,000 users without starting over Nate Wiger @nateware | Principal Gaming Solutions Architect
  • 2. AWS Gaming Solutions | GDC 2014 What's In It For Me? • Why AWS for Games? • Core Game Backend • Scaling Data with DynamoDB • Low-Latency Multiplayer with C3 • Mobile Push Notifications
  • 3. AWS Gaming Solutions | GDC 2014 Gratuitous Logo Slide
  • 4. AWS Gaming Solutions | GDC 2014 Traditional: Rigid AWS: Elastic Servers Demand Capacity Excess Capacity Wasted $$ Demand Unmet Demand Upset Players Missed Revenue Pay As You Scale
  • 5. AWS Gaming Solutions | GDC 2014 Pay As You Scale
  • 6. AWS Gaming Solutions | GDC 2014 10 Regions 51 CloudFront POPs Continuous Expansion Global Is Good
  • 7. AWS Gaming Solutions | GDC 2014
  • 8. AWS Gaming Solutions | GDC 2014 Game Backend Concepts • Think in terms of API's • Get friends, leaderboard • HTTP+JSON • Binary asset data • Mobile push • Multiplayer servers
  • 9. AWS Gaming Solutions | GDC 2014 Core Game Backend ELB S3 • Choose Region • Elastic Load Balancer • Two Availability Zones • EC2 for App • RDS Database • Multi-AZ • S3 for Game Data • Assets • UGC • Analytics Region
  • 10. AWS Gaming Solutions | GDC 2014 Scale It Way Out ELB S3 • Auto Scaling Group • Capacity on Demand • Respond to Users EC2EC2EC2 Region
  • 11. AWS Gaming Solutions | GDC 2014 Scale It Way Out ELB S3 • Auto Scaling Group • Capacity on Demand • Respond to Users • ElastiCache • Memcache • Redis EC2EC2EC2 Region
  • 12. AWS Gaming Solutions | GDC 2014 Scale It Way Out CloudFront CDN ELB S3 EC2EC2EC2 Region • Auto Scaling Group • Capacity on Demand • Respond to Users • ElastiCache • Memcache • Redis • CloudFront CDN • DLC, Assets • Game Saves • UGC
  • 13. AWS Gaming Solutions | GDC 2014 Big picture slide
  • 14. AWS Gaming Solutions | GDC 2014 Elastic Beanstalk • Managed Container • Git Push or Zip Upload • ELB, EC2, RDS • Web Dashboard • Same Performance • So Yeah, Use It
  • 15. AWS Gaming Solutions | GDC 2014 Hill Of Beans ELB S3 • Beanstalk Manages • ELB • EC2 • Auto Scaling • Monitoring • RDS • Add Other Services • S3 • CloudFront • ElastiCache • SNS EC2 Elastic Beanstalk Container EC2 CloudFront CDN
  • 16. AWS Gaming Solutions | GDC 2014
  • 17. AWS Gaming Solutions | GDC 2014 More CLI bell cd MyGameAPI eb init eb start vi app.rb require 'sinatra' get '/hello.json' do {message: "Hello World!"} End git commit –m "app updates" app.rb git aws.push • Initialize everything • Write code • Commit to git • Push to Beanstalk • Coffee / Beer • Repeat
  • 18. AWS Gaming Solutions | GDC 2014
  • 19. AWS Gaming Solutions | GDC 2014 Region Writing Is Painful Availability Zone A Availability Zone B S3 EC2 • Games are Write Heavy • Caching of Limited Use • Key Value Key Value • Binary Structures • Database = Bottleneck ELB EC2 CloudFront CDN
  • 20. AWS Gaming Solutions | GDC 2014 Sharding (Not Fun) Availability Zone A C2
  • 21. AWS Gaming Solutions | GDC 2014 DynamoDB Availability Zone A Availability Zone B S3 • NoSQL Data Store • Fully-Managed • Highly Available • PUT/GET Keys • Secondary Indexes • Provisioned Throughput • Auto Scaling EC2 EC2 ELB CloudFront CDN Elastic Beanstalk Container
  • 22. AWS Gaming Solutions | GDC 2014 Leaderboard in DynamoDB • Hash key = Primary key • Range key = Sub key • Others attributes are unstructured, unindexed • So… How to sort based on Top Score?
  • 23. AWS Gaming Solutions | GDC 2014 Leaderboard with Secondary Indexes • Create a secondary index! • Set hash key to Game Level • Set range key to Top Score • Can now query by Level, Sorted by Top Score • Handles any (sane) gaming use case
  • 24. AWS Gaming Solutions | GDC 2014 Python Leaderboard table = Table('scores', schema=[ HashKey('user'), RangeKey('level') ], throughput={ 'read': 5, 'write': 15 }, global_indexes=[ GlobalAllIndex('highscore', parts=[ HashKey('level'), RangeKey('score', data_type=NUMBER) ], throughput={ 'read': 5, 'write': 15 } ) ]) new_score = Item(table, data={ 'user': user, 'level': level, 'score': score }) new_score.save() topscores = table.query(index='highscore') for ts in topscores: print(ts['user'], ts['score'])
  • 25. AWS Gaming Solutions | GDC 2014 Big picture slide
  • 26. AWS Gaming Solutions | GDC 2014 G2 Instance • NVIDIA Kepler GPU • Game Streaming • Rendering Assets • Build Servers • AppStream!
  • 27. AWS Gaming Solutions | GDC 2014 C3 Instance • High packets per second • Very low latency, jitter • Intel Ivy Bridge CPU • SSD's • Built for games • 15 cents / hour
  • 28. AWS Gaming Solutions | GDC 2014 Enhanced Networking (SR-IOV) Before: Hypervisor After: Hardware
  • 29. AWS Gaming Solutions | GDC 2014 Multiplayer Game Servers EC2EC2 EC2 Region • Beanstalk App • Core Session • Matchmaking • Public Server Tier • Direct Client Socket • Scale on Players • CloudFront CDN • DLC, Assets • Game Saves • UGC EC2
  • 30. AWS Gaming Solutions | GDC 2014 Multiplayer Game Servers ① Login via Beanstalk ② Request Matchmaking ③ Get Game Server IP EC2EC2 EC2 Region EC2
  • 31. AWS Gaming Solutions | GDC 2014 Multiplayer Game Servers ① Login via Beanstalk ② Request Matchmaking ③ Get Game Server IP ④ Connect to Server ⑤ Pull Down Assets ⑥ Other Players Join EC2EC2 EC2 Region EC2
  • 32. AWS Gaming Solutions | GDC 2014 Multiplayer Game Servers ① Login via Beanstalk ② Request Matchmaking ③ Get Game Server IP ④ Connect to Server ⑤ Pull Down Assets ⑥ Other Players Join ⑦ Game Ends ⑧ Update Stats EC2EC2 EC2 Region EC2
  • 33. AWS Gaming Solutions | GDC 2014 Multi-Region Game Servers E2 Region EC2 Region
  • 34. AWS Gaming Solutions | GDC 2014 Big picture slide
  • 35. AWS Gaming Solutions | GDC 2014 Messages and Queues ELB S3 • Simple Notification Service • HTTP • SMS • Mobile Push EC2EC2EC2 Region
  • 36. AWS Gaming Solutions | GDC 2014 Messages and Queues ELB • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts EC2EC2EC2 Region EC2 PUB
  • 37. AWS Gaming Solutions | GDC 2014 Messages and Queues ELB EC2EC2EC2 Region EC2EC2 • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing
  • 38. AWS Gaming Solutions | GDC 2014 Messages and Queues ELB EC2EC2EC2 Region EC2EC2 • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing
  • 39. AWS Gaming Solutions | GDC 2014 Messages and Queues ELB EC2EC2EC2 Region EC2EC2 • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing PUB
  • 40. AWS Gaming Solutions | GDC 2014 Wrap It Up Already • Start Simple With Beanstalk • Go Directly to DynamoDB, Do Not Pass Go • CloudFront + S3 for Download and Upload • Add Multiplayer - Hybrid • Use the EC2 C3 Instance • SQS to Decouple and Scale
  • 41. AWS Gaming Solutions | GDC 2014 Cheers – Nate Wiger @nateware