The gaming industry is undergoing massive changes, and AWS offers unique capabilities that game developers can use to succeed. In this session, we cover cloud gaming architectural patterns you can use to create highly available and scalable online games. We discuss games-as-APIs, database design considerations, decoupled architectures, and the best instance types for mobile, social, and AAA online games. By the end of this session, you’ll understand the different architecture patterns for the major classes of online games, as well as understand which AWS technologies will help you meet the unique challenges of each one.
12. Get It Up
• Choose Region
• 9 Globally
• One Availability Zone
• Ok for Development
• No Redundancy
• EC2 Instance
• Linux or Windows
• App Server Code
• Elastic Load Balancer
• DNS Entry Point
• Database
• RDS or DIY
ELB
Social API's
Region
Region
13. Scale It Out
• Add Another AZ
• High Availability
• Load Balancing
• Secondary Database
• RDS Multi-AZ
• Or DIY
• S3 for Game Data
• Assets
• UGC
• Analytics
ELB
S3
Region
17. Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
ELB
EC2
EC2
S3
Region
18. Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis
• Or DIY
ELB
EC2
EC2
S3
Region
19. Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis
• Or DIY
• CloudFront CDN
• DLC, Assets
• PUT / POST
• Game Saves
• UGC
CloudFront
CDN
ELB
EC2
EC2
S3
Region
20. North America
Ashburn, VA (2)
Dallas, TX (2)
Hayward, CA
Jacksonville, FL
Los Angeles, CA (2)
Miami, FL
Newark, NJ
New York, NY (3)
Palo Alto, CA
Seattle, WA
San Jose, CA
South Bend, IN
St. Louis, MO
Europe
Amsterdam (2)
Dublin
Frankfurt (2)
London (2)
Madrid
Milan
Paris (2)
Stockholm
South America
Sao Paulo
40+ CloudFront POPs
Asia
Chennai
Hong Kong (2)
Mumbai
Osaka
Singapore (2)
Seoul
Sydney
Tokyo (2)
24. Hill Of Beans
• Beanstalk Manages
• ELB
• EC2
• Auto Scaling
• Monitoring
• RDS
• Add Other Services
• S3
• CloudFront
• ElastiCache
• SNS
CloudFront
CDN
ELB
EC2
EC2
S3
Elastic Beanstalk Container
25.
26.
27. Writing Is Painful
•
•
•
•
•
Games are Write Heavy
Caching of Limited Use
Key Value Key Value
Binary Data
Database = Bottleneck
CloudFront
CDN
ELB
EC2
EC2
S3
Availability
Zone A
Availability
Zone B
Region
Region
37. Off The Shelf Analytics
•
•
•
•
•
Easy To Integrate
Pre-Baked Reports
Rate Limits
Retention Windows
Data Lock-In
38. Analytics on AWS
• Elastic MapReduce
• Managed Hadoop
• Parse Logs
• Data Cleanup
• Aggregation
CloudFront
CDN
ELB
EC2
EC2
S3
Availability
Zone A
Availability
Zone B
Region
Region
39. Analytics on AWS
• Elastic MapReduce
• Managed Hadoop
• Parse Logs
• Data Cleanup
• Aggregation
CloudFront
CDN
ELB
EC2
• Redshift
• Data Warehouse
• Column-Oriented
• SQL Compatible
EC2
S3
Availability
Zone A
Availability
Zone B
Region
Region
40. Redshift for Game Analytics
•
•
•
•
Write File on Device
Periodically Upload to S3
Nightly Process into Redshift
Point GUI Tool to Redshift
2013-10-24,107,2.53,2134,932
2013-10-29,107,2.73,2211,817
2013-11-02,107,1.95,1833,752
2013-11-04,107,1.44,1121,635
2013-11-05,107,1.76,1411,1032
41. Redshift for Game Analytics
•
•
•
•
Also Collect Server Logs
Periodically Upload to S3
Optional Cleanup with EMR
Stick Into Redshift
2013-10-24,107,2.53,2134,932
2013-10-29,107,2.73,2211,817
2013-11-02,107,1.95,1833,752
2013-11-04,107,1.44,1121,635
2013-11-05,107,1.76,1411,1032
EC2
42. Wrap It Up Already
•
•
•
•
•
•
•
•
Free To Play is Here To Stay
Start Small, Scale Out
Elastic Beanstalk
DynamoDB
S3 with CloudFront
SNS Mobile Push
SQS + ElastiCache to Scale
Focus on the Game
43. A Few Gaming Sessions
•
•
•
•
•
MBL303 – High-Performance Gaming Ops
MBL304 – Red 5's Firefall MMO
MBL305 – Killzone: Shadow Fall
MBL307 – Parse on AWS
MBL308 – SNS Mobile Push
44. Other Relevant Sessions
•
•
•
•
•
•
•
DAT101 – Production DynamoDB in an Hour
DAT204 – SmugMug: MySQL to DynamoDB
DAT307 – ElastiCache Deep Dive
DMG204 – Elastic Beanstalk 0-60
SVC206 – Using SQS to Scale
DAT103 – Intro to Redshift
BDT203 – Analytics with DynamoDB + EMR
45.
46. Please give us your feedback on this
presentation
MBL201
As a thank you, we will select prize
winners daily for completed surveys!