0
MBL201 Mobile Game Architectures
Nate Wiger, Principal Solutions Architect
November 13, 2013

© 2013 Amazon.com, Inc. and ...
What's In It For Me?
•
•
•
•
•

Mobile Game Trends
Core Game Backend
Scaling Out
Push Messages
Analytics
A Few Gaming Customers
Mobile Game Landscape
•
•
•
•
•
•

Free To Play
In-App Purchases
Long-Tail
Cross-Platform
Go Global
User Retention = Reven...
Projected Mobile App Revenue
90000
80000
70000
60000
50000
40000
30000
20000
10000
0

Ads
IAP
Paid
Source:
Gartner
2011

2...
Mobile Online Features
•
•
•
•
•
•

Social Login
Friends
Leaderboards
Push Messages
Content Updates
Analytics
Pay As You Scale
Unmet Demand
Upset Players
Missed Revenue
Servers

Capacity

Demand

Demand

Excess Capacity
Wasted $$

T...
Pay As You Scale
Go Global In Minutes

9 Regions
25 Availability Zones
Continuous Expansion
Mobile Backend Technology
•
•
•
•
•
•
•

HTTP Based
External Social API's
Save State
Database
Static Data Store
Mobile Pus...
Get It Up
• Choose Region
• 9 Globally
• One Availability Zone
• Ok for Development
• No Redundancy
• EC2 Instance
• Linux...
Scale It Out
• Add Another AZ
• High Availability
• Load Balancing
• Secondary Database
• RDS Multi-AZ
• Or DIY
• S3 for G...
Big picture slide
Scale It Way Out
ELB

S3

Region
Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users

ELB

EC2

EC2

S3

Region
Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis
• Or DIY

E...
Scale It Way Out
• Auto Scaling Group
• Capacity on Demand
• Respond to Users
• ElastiCache
• Memcache
• Redis
• Or DIY
• ...
North America
Ashburn, VA (2)
Dallas, TX (2)
Hayward, CA
Jacksonville, FL
Los Angeles, CA (2)
Miami, FL
Newark, NJ
New Yor...
Big picture slide
Big picture slide
Elastic Beanstalk
•
•
•
•
•
•
•

Managed Container
Git Push or Zip Upload
ELB, EC2, RDS
Web Dashboard
URL Swap Deploys
Sam...
Hill Of Beans
• Beanstalk Manages
• ELB
• EC2
• Auto Scaling
• Monitoring
• RDS
• Add Other Services
• S3
• CloudFront
• E...
Writing Is Painful
•
•
•
•
•

Games are Write Heavy
Caching of Limited Use
Key Value Key Value
Binary Data
Database = Bott...
DynamoDB
•
•
•
•
•
•

NoSQL Data Store
Fully-Managed
Highly Available
PUT/GET Keys
Provisioned Throughput
Secondary Indexe...
Messages and Queues
• Simple Notification Service
• HTTP
• SMS
• Mobile Push

ELB

EC2

EC2

S3

Region
PUB

Messages and Queues
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts

ELB
...
Messages and Queues
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS
• Ba...
Messages and Queues
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS
• Ba...
PUB

Messages and Queues
• Simple Notification Service
• HTTP
• SMS
• Mobile Push
• CloudWatch
• Monitoring
• Alerts
• SQS...
Big picture slide
ANALYTICS!
Off The Shelf Analytics
•
•
•
•
•

Easy To Integrate
Pre-Baked Reports
Rate Limits
Retention Windows
Data Lock-In
Analytics on AWS
• Elastic MapReduce
• Managed Hadoop
• Parse Logs
• Data Cleanup
• Aggregation

CloudFront
CDN
ELB

EC2

...
Analytics on AWS
• Elastic MapReduce
• Managed Hadoop
• Parse Logs
• Data Cleanup
• Aggregation

CloudFront
CDN
ELB

EC2

...
Redshift for Game Analytics
•
•
•
•

Write File on Device
Periodically Upload to S3
Nightly Process into Redshift
Point GU...
Redshift for Game Analytics
•
•
•
•

Also Collect Server Logs
Periodically Upload to S3
Optional Cleanup with EMR
Stick In...
Wrap It Up Already
•
•
•
•
•
•
•
•

Free To Play is Here To Stay
Start Small, Scale Out
Elastic Beanstalk
DynamoDB
S3 with...
A Few Gaming Sessions
•
•
•
•
•

MBL303 – High-Performance Gaming Ops
MBL304 – Red 5's Firefall MMO
MBL305 – Killzone: Sha...
Other Relevant Sessions
•
•
•
•
•
•
•

DAT101 – Production DynamoDB in an Hour
DAT204 – SmugMug: MySQL to DynamoDB
DAT307 ...
Please give us your feedback on this
presentation

MBL201
As a thank you, we will select prize
winners daily for completed...
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013
Upcoming SlideShare
Loading in...5
×

Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013

1,928

Published on

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.

Published in: Technology, Business
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,928
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
74
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Transcript of "Mobile Game Architectures on AWS (MBL201) | AWS re:Invent 2013"

  1. 1. MBL201 Mobile Game Architectures Nate Wiger, Principal Solutions Architect November 13, 2013 © 2013 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
  2. 2. What's In It For Me? • • • • • Mobile Game Trends Core Game Backend Scaling Out Push Messages Analytics
  3. 3. A Few Gaming Customers
  4. 4. Mobile Game Landscape • • • • • • Free To Play In-App Purchases Long-Tail Cross-Platform Go Global User Retention = Revenue
  5. 5. Projected Mobile App Revenue 90000 80000 70000 60000 50000 40000 30000 20000 10000 0 Ads IAP Paid Source: Gartner 2011 2012 2013 2014 2015 2016 2017
  6. 6. Mobile Online Features • • • • • • Social Login Friends Leaderboards Push Messages Content Updates Analytics
  7. 7. Pay As You Scale Unmet Demand Upset Players Missed Revenue Servers Capacity Demand Demand Excess Capacity Wasted $$ Traditional: Rigid AWS: Elastic
  8. 8. Pay As You Scale
  9. 9. Go Global In Minutes 9 Regions 25 Availability Zones Continuous Expansion
  10. 10. Mobile Backend Technology • • • • • • • HTTP Based External Social API's Save State Database Static Data Store Mobile Push Analytics
  11. 11. 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
  12. 12. 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
  13. 13. Big picture slide
  14. 14. Scale It Way Out ELB S3 Region
  15. 15. Scale It Way Out • Auto Scaling Group • Capacity on Demand • Respond to Users ELB EC2 EC2 S3 Region
  16. 16. Scale It Way Out • Auto Scaling Group • Capacity on Demand • Respond to Users • ElastiCache • Memcache • Redis • Or DIY ELB EC2 EC2 S3 Region
  17. 17. 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
  18. 18. 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)
  19. 19. Big picture slide
  20. 20. Big picture slide
  21. 21. Elastic Beanstalk • • • • • • • Managed Container Git Push or Zip Upload ELB, EC2, RDS Web Dashboard URL Swap Deploys Same Performance So Yeah, Use It
  22. 22. 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
  23. 23. 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
  24. 24. DynamoDB • • • • • • NoSQL Data Store Fully-Managed Highly Available PUT/GET Keys Provisioned Throughput Secondary Indexes CloudFront CDN ELB EC2 EC2 S3 Availability Zone A Availability Zone B Region Region
  25. 25. Messages and Queues • Simple Notification Service • HTTP • SMS • Mobile Push ELB EC2 EC2 S3 Region
  26. 26. PUB Messages and Queues • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts ELB EC2 EC2 EC2 Region
  27. 27. Messages and Queues • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing ELB EC2 EC2 EC2 Region
  28. 28. Messages and Queues • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing ELB EC2 EC2 EC2 Region
  29. 29. PUB Messages and Queues • Simple Notification Service • HTTP • SMS • Mobile Push • CloudWatch • Monitoring • Alerts • SQS • Background Tasks • Avatar Resizing • Score Processing ELB EC2 EC2 EC2 Region
  30. 30. Big picture slide
  31. 31. ANALYTICS!
  32. 32. Off The Shelf Analytics • • • • • Easy To Integrate Pre-Baked Reports Rate Limits Retention Windows Data Lock-In
  33. 33. 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
  34. 34. 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
  35. 35. 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
  36. 36. 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
  37. 37. 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
  38. 38. 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
  39. 39. 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
  40. 40. Please give us your feedback on this presentation MBL201 As a thank you, we will select prize winners daily for completed surveys!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×