Games with your head in the cloud
Upcoming SlideShare
Loading in...5
×
 

Games with your head in the cloud

on

  • 770 views

PaxDev presentation. Code at https://github.com/JulienEllie/paxdevdemo

PaxDev presentation. Code at https://github.com/JulienEllie/paxdevdemo

Statistics

Views

Total Views
770
Views on SlideShare
769
Embed Views
1

Actions

Likes
0
Downloads
2
Comments
0

1 Embed 1

https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • PRESENT YOURSELF DUMMY\n
  • \n
  • \n\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • If you’re here it’s because you need the internet to help with your game. If you’re using the net, the cloud can help.\n\n\n
  • \n
  • - drawsome got downloaded 20 millions times in 5 weeks, the server load would be insane!\n- diablo 3 launch (I don’t know their backend, I can only speculate)\n- so how do you avoid issues? 2 WAYS:\n* REDUNDANCY\n* REDUNDANCY\nMonitor your service, know what’s going on. Don’t let your customers be the people finding issues.\n\nDon’t disappoint your audience, don’t go down.\n
  • - explain the pic\n- a lot of what the cloud does existed before. It’s putting it all together in a way that makes sense and is highly usable that helps.\n- this creates opportunities to innovate. do things no one has done before, do it repeatedly, cheaply and efficiently\n- this in turn in changing gaming: always on, always connected means new experiences, new game types and you don’t need a crazy infrastructure like Xbox Live to connect gamers together\n- what would you do with cheap, always on, always scalable computing resources available to you?\n\n
  • All of this is expensive to develop and maintain.\n- pay only for what you use, priced by the hour\n- reduce provisioning time\n- often with no or little commitment\n- make sure to look at Reserved Instances\n- FREE TIER, including DynamoDB\n
  • \n
  • Going to do things right, you need:\n- resilience through redundancy, this means you need load balancers, you need multi machines in multiple datacenters, etc.\n- ability to scale\n- monitoring and alarming. What happened, what’s happening, why? CRITICAL TO YOUR BUSINESS!\n\n\n
  • - different games have different need\n- not every game needs to be online\n- not every online game needs hugely scalable infrastructures\n- but if you do... do it right... \nIn the words of the lyrical poet vanilla ice: “Anything less than the best is a felony”\n
  • 1) games like minecraft used AWS to host their content, if you’re not going through steam or Apple to distribute your content, this is attractive\n2) + TURN BY TURN, SENDING EMAIL\n + Game servers? Why not provide a hosted option? So much easier. \n3) you can create actual MMOs or connected games with extended persistence, it’s not just the blizzards of the world anymore\n
  • \n
  • \n
  • CUSTOMER SCENARIOS\n
  • CUSTOMER SCENARIOS\n
  • CUSTOMER SCENARIOS\n
  • CUSTOMER SCENARIOS\n
  • REQUIREMENTS\n
  • REQUIREMENTS\n
  • REQUIREMENTS\n
  • REQUIREMENTS\n
  • \n
  • +SECURITY\n
  • + BE STATELESS, so much easier to scale\n
  • \n
  • \n
  • + UPGRADES BY REDEPLOY\n
  • \n
  • \n
  • \n
  • \n

Games with your head in the cloud Games with your head in the cloud Presentation Transcript

  • Writing gameswith your head in the cloud Julien Ellie - Amazon AWS
  • S.A.A.S, I.A.A.S., P.A.A.S., W.T.F.?
  • • Compute
  • • Compute• Storage
  • • Compute• Storage• Networking
  • • Compute• Storage• Networking• Monitoring
  • • Compute• Storage• Networking• Monitoring• Authentication
  • • Compute • Elastic Cloud Compute (EC2)• Storage • Simple Storage Service (S3), Elastic Block Storage, RDS Mysql, RDS Oracle, DynamoDB• Networking • Route53, Elastic Load Balancer,Virtual Private Cloud• Monitoring • CloudWatch• Authentication • Identity and Access Management (IAM)
  • • Notification
  • • Notification• Processing
  • • Notification• Processing• Content Delivery
  • • Notification• Processing• Content Delivery• Application Hosting
  • • Notification• Processing• Content Delivery• Application Hosting• Automation
  • • Notification • Simple Notification Service, Simple Email Service• Processing • Simple Queuing Service, Simple Workflow Service, Elastic MapReduce• Content Delivery • CloudFront• Application Hosting • Elastic Beanstalk• Automation • CloudFormation, Auto Scaling Groups
  • Confused yet?
  • So why use the cloud anyway?
  • Good enough, right?
  • Don’t go down, scale as you need
  • Innovate!
  • Don’t break the bank
  • In the end this leads to ...
  • NERD RAGE!
  • Use the cloud for what makes sense in your scenario!
  • • Distribute the game/updates/DLC (Storage, Content Delivery)• Enrich single player experience (Compute/Storage/Networking/ Processing)• Multiplayer: from 2 to MMOs
  • An example?
  • Platformer
  • • Simple platformer game: collect gems, get out. Dont die.
  • • Simple platformer game: collect gems, get out. Dont die.• Levels should come from the server. Get new levels all the time.
  • • Simple platformer game: collect gems, get out. Dont die.• Levels should come from the server. Get new levels all the time.• Always show the ghost/replay of the best highscore per level.
  • • Simple platformer game: collect gems, get out. Dont die.• Levels should come from the server. Get new levels all the time.• Always show the ghost/replay of the best highscore per level.• Upload my replay/high score if I beat the high score.
  • • A REST API serving levels and replays/highscores as JSON
  • • A REST API serving levels and replays/highscores as JSON• Store all the data in a safe, backed up location
  • • A REST API serving levels and replays/highscores as JSON• Store all the data in a safe, backed up location• An admin UI to edit and manage levels and replays/highscores.
  • • A REST API serving levels and replays/highscores as JSON• Store all the data in a safe, backed up location• An admin UI to edit and manage levels and replays/highscores.• Make it redundant, resilient, scalable.
  • So... not this, but let’s start there
  • Add multi-AZ replicated DB
  • Load balancing
  • Auto scaling
  • Monitoring & Alarms
  • Build on demand
  • Q &A
  • That’s all I got!Get in touch: JulienE@amazon.com http://github.com/JulienEllie/