Your SlideShare is downloading. ×
  • Like
Game hosting on the aws cloud
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Game hosting on the aws cloud

  • 1,557 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,557
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
40
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • 스타트업이나 대기업 모두에 신사업에 대한 기술적, 재무적 진입 탈출장벽 제거  새로운 사업기회 가능성 확장Back in 2008, they launched a Facebook application that lets people tell their friends when they've uploaded a video that includes that friend. When people saw the music videos their friends created when the application shared it with them, they wanted to go out and create their own videos. Shortly after launching their social networking modification, they were featured on Techcrunch. As you can imagine, this brought them a lot of unexpected traffic. In the course of 3 days, they went from running on 40 instances to 5,000 instances. Because they were using Amazon Web Services, they were able to handle all of this incoming traffic without having to do a thing. AWS managed it all for them.
  • The first step is to deliver the game to the client.The game can be a flash file, Java applet, or even a client that you have to download and install locally. In all this cases, the game is considered as static content
  • And the whole footprint is supported by many edge locations, places from which content can be served to your customers for the fast possible response times.
  • Some games are static and don't need interaction with a server (ex: Tetris), but most of the time, you need some kind of dynamic interaction to store state, or get environment information that is not included with the game itself (ex: other players score).Dynamic data is generated from servers. We have a service for this :
  • Build websites that sleep at night. Build machines only live when you need it
  • And just like an electricity grid, where you would not wire every factory to the same power station, the AWS infrastructure is global, with multiple regions around the globe from which services are available. This means you have control over things like where you applications run, where you data is stored, and where best to serve your customers from.
  • Each AWS region is also split into Availability Zones, making highly available applications possible from within a region.
  • Let's take a quick look at what that means with a tangible example. Here, two commands are issued against AWS to create servers, or EC2 instances, in two zones in the EU. We're creating 8 instances of differing sizes, running geopgrahically distinct for availability purposes, all from 2 simple commands. Once booted, in a matter of a minute or two, those server instances are available to you to run your own applications on. Amazon has done the heavy lifting for you, so you can focus on using the compute resources available to you.
  • Continuing the example, here we have created 4 new large servers in the US,
  • and lastly, by way of illustration, creating an auto-scaling group that will expand to 200 servers if a spike in load occurs, changing firewall rules and adding load balancing.
  • And of course, all of this functionality is available through a web console, so whether you want to drive the cloud by the click of a mouse or the call of an API, the power is at your disposal.
  • MMO = Massively Multiplayer Online game -- http://en.wikipedia.org/wiki/Massively_multiplayer_online_game
  • MMO Facebook Game
  • Need to store player's state.
  • First approach is to use relational databases
  • RDS prestructure before adding new attributes, with NoSQL you do not have to do this it is a sparse schema. RDS creates DB on EC2 and EBS for you, gives you Host name and put and you take it from there with your fav SQL client. SimpleDB is in the DataPath, you dump the data and it creates the schema (Does Dynamo?)RDS Benefits – 1. Scale with modify API but there is an outage when you swap out instance types (e.g. from med to XL) but only takes a femins. Events are starting and done. IP address stays the same. Same for EBS add storage with no downtime or degradation in perf2. DB Backup and Restore – DB Snapshot or automated backup. 3. Monitor DB – recover from DB crash, EC2 crash, Gumi has been our number 1 customer for a few weeks over $250k in the last 4 weeksFunzio is in the top 5 and so is activisionEA, sony, bightgames also customers.We have been talking to playfish about DynamoDB but I don’t see them in the rds user base.Could not find zynga.
  • What is Big Data? Why is there so much buzz?In the past few years, more users are online. More devices are online. As a result more data is generated every second. The big challenge is how do we store this data and analyze them.
  • First approach is to use relational databases
  • DAU = Daily Active UsersMAU = Monthly Active Users
  • +24% on magic wand sales !
  • Each autoscaling group uses a different set of AMIAMI-B contains the test code.
  • One of the key slides in Adam Selipsky's presentation in the Evening in the Cloud panel on Jan. 20 at the Computer History Museum in Mountain View, Calif., was a picture of Amazon's CEO Jeff Bezos in front of a vintage 1890s electric generator in a Belgium beer factory.
  • Our goal, and what our customers tell us they see, is that this ratio is inverted after moving to AWS. When you move your infrastructure to the cloud, this changes things drastically. Only 30% of your time should be spent architecting for the cloud and configuring your assets. This gives you 70% of your time to focus on your business. Project teams are free to add value to the business and it's customers, to innovate more quickly, and to deliver products to market quickly as well.

Transcript

  • 1. GAME HostingON THE AWS CLOUD정진, 아마존웹서비스 한국영업대표jinjung@amazon.com
  • 2. Unpredictable usage and distribution volumes Spiky requirementsThe Challenge faced by Game Developers (before AWS) Large up front investment Performance and availability requirements
  • 3. 40 servers to 5000 in 3 days EC2 scaled to peak of 5000 Number of EC2 Instances instances “Techcrunched” Launch of Facebook modification Steady state of ~40 instances 4/12/2008 4/13/2008 4/14/2008 4/15/2008 4/16/2008 4/17/2008 4/18/2008 4/19/2008 4/20/2008
  • 4. Online Games =Client / Server apps
  • 5. Client SideGame interface + Game Logic
  • 6. Static Content
  • 7. Amazon S3Simple Storage Service for static content
  • 8. 2GB free millions of users
  • 9. Amazon CloudFront Flexible content delivery network
  • 10. On a global footprint Edge Locations London(2) Seattle South Bend New York (2) Amsterdam Newark Stockholm Dublin Palo Alto TokyoSan Jose Frankfurt(2) Paris(2) Ashburn(2) Milan Osaka Los Angeles (2) Jacksonville Dallas(2) Hong Kong St.Louis Miami Singapore(2) Sydney Sao Paulo
  • 11. Server SidePlayers state + Game Logic
  • 12. Dynamic Interaction
  • 13. Amazon EC2On-demand instances with admin access
  • 14. Pay only forwhat you use !
  • 15. Daily CPU Load $52 / hr day 14 12 10 8 Load 6 25% Savings 4 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 HourOptimize by the time of day $15 / hr night
  • 16. On a global footprint Region US-WEST (N. California) EU-WEST (Ireland) GOV CLOUD ASIA PAC (Tokyo) US-EAST (Virginia)US-WEST (Oregon) ASIA PAC (Singapore) SOUTH AMERICA (Sao Paulo) ASIA PAC (Sydney)
  • 17. On a global footprint Availability Zone
  • 18. At the end of a web serviceec2-run-instances ami-b232d0db ec2-run-instances ami-b232d0db --instance-count 3 --instance-count 5 --availability-zone eu-west-1a --availability-zone eu-west-1c --instance-type m1.small --instance-type m1.medium
  • 19. At the end of a web service ec2-run-instances ami-b232d0db --instance-count 2 --availability-zone us-east-1d --instance-type m1.xlargeec2-run-instances ami-b232d0db --instance-count 2 --availability-zone us-east-1b --instance-type m1.xlarge
  • 20. At the end of a web service as-create-auto-scaling-group MyGroup ec2-authorize default -p 80 --launch-configuration MyConfig --availability-zones eu-west-1c --min-size 2 --max-size 200 elb-create-lb myLoadBalancer
  • 21. and rich console services
  • 22. Amazon ELB & Auto ScalingDistribute load for highly scalable applications
  • 23. 6:00 PM
  • 24. 8:00 PM
  • 25. 10:00 PM
  • 26. 11:00 PM
  • 27. 0:00 AM
  • 28. 1:00 PM
  • 29. 2:00 AM
  • 30. MMO GAMES
  • 31. Data StorageRelational Databases
  • 32. Amazon RDSRelational Database Service
  • 33. Amazon Relational Database ServiceRDS is a fully managed Relational database service that is simple to deploy, easy to scale, reliable and cost-effective Choice of Database Engines Fully Managed Service Push Button Scalability Fault Tolerance with Multi-AZ Works with EC2 & ElastiCache Amazon Relational Database Service (RDS)
  • 34. High Availability – Multi-AZ Deployments Enterprise grade fault tolerance Synchronous replication Automatic failover
  • 35. Push Button ScalingScale up your instanceand storageScale out as your appgrowsAutomatic backupEasy restore
  • 36. Read Scaling with Amazon ElastiCache and Read ReplicasImprove performancewith ElastiCacheRead replica for readscalingOff load BI and reportingfrom production
  • 37. Challenges in building high scale gamesMore users are onlineMore devices are onlineMore data is generated every second
  • 38. Amazon DynamoDBFully managed NoSQL database service
  • 39. DynamoDB Highlights Typical service-side latency: single digit milliseconds Solid State Drive (SSD)-backed service Latency is consistent • As throughput increases • As storage grows No need for tuning.Get latencyCPU utilization
  • 40. Provisioned Throughput Reserve the IOPS needed for each table Set at table creation Increase / decrease any time via API call Pay for throughput and storage (not instances) • $0.01 per hour for every 10 units of Write Capacity • $0.01 per hour for every 50 units of Read Capacity • $1.00 per GB-month of Storage
  • 41. FAST ITERATIONS
  • 42. A/B TESTING
  • 43. PROTOTYPING
  • 44. A prototype shouldnt require big investments…
  • 45. think big. start small. scale fast.
  • 46. Undifferentiated heavy lifting
  • 47. Cloud computing 30% 70% On-Premise Game Managing All of theInfrastructure Business “Undifferentiated Heavy Lifting” AWS Configuring More Time to Focus on Cloud-Based Your Cloud Game BusinessInfrastructure Assets 70% 30%
  • 48. Flexibility = Freedom of Choice = Agility Deployment & Administration App ServicesCompute Storage Database Networking AWS Global Infrastructure