SlideShare a Scribd company logo
1 of 21
Download to read offline
No	
  Free	
  Lunch	
  
Transac/ons	
  in	
  Online	
  Games	
  
James	
  Gwertzman	
  
(formerly	
  PopCap/EA)	
  
Chief	
  evangelist,	
  Code.org	
  
	
  
HPTS	
  2013	
  
Pay	
  up	
  front	
  
Free	
  
Mul/player	
  Singleplayer	
  
Top	
  10	
  highest	
  grossing	
  iPhone	
  games	
  
Source:	
  ThinkGaming	
  
1997	
   2009	
   2013	
  2004	
  
•  PC-­‐based	
  MMORPG	
  
•  150-­‐200K	
  subscribers	
  
•  67K	
  peak	
  concurrent	
  
•  Custom	
  servers	
  
•  Flat	
  file	
  storage	
  
•  Data	
  center	
  
•  Minimal	
  analy/cs	
  
•  Subscrip/on	
  
•  PC-­‐based	
  MMORPG	
  
•  12M	
  subscribers	
  (2010)	
  
•  1M	
  peak	
  concurrent	
  
(7K	
  per	
  server)	
  
•  Custom	
  servers	
  
•  RDBMS	
  storage	
  
•  Data	
  center	
  
•  Minimal	
  analy/cs	
  
•  Subscrip/on	
  
•  Web-­‐based	
  casual	
  game	
  
•  80M	
  monthly	
  ac/ve	
  
•  30M	
  daily	
  ac/ve	
  
•  LAMP	
  stack	
  servers	
  
•  RDBMS	
  storage	
  
•  AWS	
  cloud	
  
•  Heavy	
  analy/cs	
  
•  Free	
  to	
  play	
  
•  Mobile	
  casual	
  game	
  
•  25M	
  downloads	
  
•  ???	
  daily	
  ac/ve	
  
•  LAMP	
  stack	
  servers	
  
•  RDBMS	
  +	
  NoSQL	
  
•  Data	
  center	
  
•  Heavy	
  analy/cs	
  
•  Free	
  to	
  play	
  
WoW	
  Architecture	
  
Gaming	
  Client	
  
Login	
  Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Game	
  
Server	
  
Main	
  
Database	
  
Read-­‐only	
  
Slave	
  
Read-­‐only	
  
Slave	
  
Read-­‐only	
  
Slave	
  
Game	
  
processing…	
  
Replica/on	
  
Wri/ng	
  
back	
  data	
  to
master	
  DB	
  
Up	
  to	
  2	
  hour	
  
delay	
  
Source:	
  AppAnnie	
  
Fixes	
  
Before	
   A(er	
  
1	
  database	
   20	
  databases	
  (w/	
  hash	
  on	
  user	
  ID)	
  
Physical	
  hardware	
   Virtual	
  servers	
  
Single	
  connec/on	
  to	
  shared	
  ID	
  system	
   Mul/ple	
  VPN’s	
  into	
  shared	
  ID	
  system	
  
Support	
  manually	
  fixing	
  corrupt	
  user	
  data	
   Fixed	
  root	
  cause	
  of	
  corrupt	
  user	
  data	
  
EA	
  Central	
  Services	
  
Central	
  User	
  
ID	
  Service	
  
Game	
  Server	
  	
  /	
  
Database(s)	
  
Source:	
  AppAnnie	
  
Things	
  they	
  did	
  right	
  
•  Tes/ng,	
  tes/ng,	
  and	
  more	
  tes/ng	
  
– Used	
  AWS	
  to	
  set	
  up	
  1000’s	
  of	
  nodes,	
  millions	
  of	
  users	
  
– Found	
  problems	
  w/	
  concurrent	
  connec/ons	
  
– Fixes:	
  OS	
  level	
  tuning,	
  op/mize	
  network	
  code,	
  add	
  
more	
  hardware,	
  upgrade	
  load	
  balancer	
  
•  Shrank	
  save-­‐game	
  payload	
  (30K-­‐>3.5K)	
  
•  Architected	
  right	
  from	
  start	
  
– User	
  data:	
  shards	
  
– Analy/cs-­‐>Logs-­‐>Hadoop-­‐>Data	
  Warehouse	
  (cube)	
  
Trends	
  
•  Tes/ng	
  is	
  HARD	
  but	
  CRITICAL	
  
– Scale	
  =	
  millions	
  of	
  users	
  
– Use	
  real	
  “user	
  stories”	
  –	
  end-­‐to-­‐end	
  cases	
  
– Semng	
  up	
  test	
  (adding	
  10M	
  records)	
  takes	
  days	
  
•  Analy/cs	
  =	
  more	
  and	
  more	
  transac/ons	
  
– More	
  than	
  half	
  of	
  all	
  transac/ons	
  now…	
  
– Understand	
  what’s	
  going	
  on	
  inside	
  the	
  game	
  
– Especially	
  w/	
  shin	
  to	
  free-­‐to-­‐play	
  
Summary	
  of	
  Challenges	
  
•  Writes	
  >	
  Reads	
  
•  Dependencies	
  on	
  external	
  services	
  
•  Transac/ons	
  growing	
  faster	
  than	
  users	
  
•  Unsophis/cated	
  developers	
  
Off-­‐the-­‐shelf	
  tech	
  roundup	
  
Web	
  Server	
   nginx,	
  apache	
  
Storage	
   MySQL,	
  MongoDB,	
  zBase	
  
Mul/player	
  Server	
   SmartFox,	
  Photon	
  
Ques/ons?	
  
james@playfab.com	
  
	
  
	
  

More Related Content

Viewers also liked

Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesJames Gwertzman
 
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Simon Hade
 
5x revenues - Live Ops wisdom from the Asian games industry
5x revenues - Live Ops wisdom from the Asian games industry5x revenues - Live Ops wisdom from the Asian games industry
5x revenues - Live Ops wisdom from the Asian games industryLeonard Frankel
 
Life After Launch: How to Grow Mobile Games with In-Game Events
Life After Launch: How to Grow Mobile Games with In-Game EventsLife After Launch: How to Grow Mobile Games with In-Game Events
Life After Launch: How to Grow Mobile Games with In-Game EventsSimon Hade
 
Commander's Intent: Managing Through Uncertainty
Commander's Intent: Managing Through UncertaintyCommander's Intent: Managing Through Uncertainty
Commander's Intent: Managing Through UncertaintyJames Gwertzman
 
PlayFab Advanced Cloud Script
PlayFab Advanced Cloud ScriptPlayFab Advanced Cloud Script
PlayFab Advanced Cloud ScriptThomas Robbins
 
Say hello to the new PlayFab!
Say hello to the new PlayFab!Say hello to the new PlayFab!
Say hello to the new PlayFab!Thomas Robbins
 
Integration Testing as Validation and Monitoring
 Integration Testing as Validation and Monitoring Integration Testing as Validation and Monitoring
Integration Testing as Validation and MonitoringMelissa Benua
 
Man in the Browser attacks on online banking transactions
Man in the Browser attacks on online banking transactionsMan in the Browser attacks on online banking transactions
Man in the Browser attacks on online banking transactionsDaveEdwards12
 
Lean Live Ops - Free Your Devs (annotated edition) - Joe Raeburn
Lean Live Ops - Free Your Devs (annotated edition) - Joe RaeburnLean Live Ops - Free Your Devs (annotated edition) - Joe Raeburn
Lean Live Ops - Free Your Devs (annotated edition) - Joe RaeburnSimon Hade
 
Onlinetransaction
OnlinetransactionOnlinetransaction
Onlinetransactionarikazukito
 
Game Live Ops for Mobile Indies
Game Live Ops for Mobile IndiesGame Live Ops for Mobile Indies
Game Live Ops for Mobile IndiesSimon Newstead
 
Online transaction security (an undergraduate independent study)
Online transaction security (an undergraduate independent study)Online transaction security (an undergraduate independent study)
Online transaction security (an undergraduate independent study)Amila Gamanayake
 
Building the pipeline for FUN - Game Development
 Building the pipeline for FUN - Game Development Building the pipeline for FUN - Game Development
Building the pipeline for FUN - Game DevelopmentFaunaFace, Inc
 
Continuous Integration as a Way of Life
Continuous Integration as a Way of LifeContinuous Integration as a Way of Life
Continuous Integration as a Way of LifeMelissa Benua
 
Online Payment Transactions
Online Payment TransactionsOnline Payment Transactions
Online Payment Transactionspcomo2009
 

Viewers also liked (17)

Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P Games
 
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
 
5x revenues - Live Ops wisdom from the Asian games industry
5x revenues - Live Ops wisdom from the Asian games industry5x revenues - Live Ops wisdom from the Asian games industry
5x revenues - Live Ops wisdom from the Asian games industry
 
Life After Launch: How to Grow Mobile Games with In-Game Events
Life After Launch: How to Grow Mobile Games with In-Game EventsLife After Launch: How to Grow Mobile Games with In-Game Events
Life After Launch: How to Grow Mobile Games with In-Game Events
 
Commander's Intent: Managing Through Uncertainty
Commander's Intent: Managing Through UncertaintyCommander's Intent: Managing Through Uncertainty
Commander's Intent: Managing Through Uncertainty
 
PlayFab Advanced Cloud Script
PlayFab Advanced Cloud ScriptPlayFab Advanced Cloud Script
PlayFab Advanced Cloud Script
 
Say hello to the new PlayFab!
Say hello to the new PlayFab!Say hello to the new PlayFab!
Say hello to the new PlayFab!
 
Integration Testing as Validation and Monitoring
 Integration Testing as Validation and Monitoring Integration Testing as Validation and Monitoring
Integration Testing as Validation and Monitoring
 
Man in the Browser attacks on online banking transactions
Man in the Browser attacks on online banking transactionsMan in the Browser attacks on online banking transactions
Man in the Browser attacks on online banking transactions
 
Lean Live Ops - Free Your Devs (annotated edition) - Joe Raeburn
Lean Live Ops - Free Your Devs (annotated edition) - Joe RaeburnLean Live Ops - Free Your Devs (annotated edition) - Joe Raeburn
Lean Live Ops - Free Your Devs (annotated edition) - Joe Raeburn
 
Onlinetransaction
OnlinetransactionOnlinetransaction
Onlinetransaction
 
Game Live Ops for Mobile Indies
Game Live Ops for Mobile IndiesGame Live Ops for Mobile Indies
Game Live Ops for Mobile Indies
 
Online transaction security (an undergraduate independent study)
Online transaction security (an undergraduate independent study)Online transaction security (an undergraduate independent study)
Online transaction security (an undergraduate independent study)
 
Building the pipeline for FUN - Game Development
 Building the pipeline for FUN - Game Development Building the pipeline for FUN - Game Development
Building the pipeline for FUN - Game Development
 
Continuous Integration as a Way of Life
Continuous Integration as a Way of LifeContinuous Integration as a Way of Life
Continuous Integration as a Way of Life
 
Online transaction
Online transactionOnline transaction
Online transaction
 
Online Payment Transactions
Online Payment TransactionsOnline Payment Transactions
Online Payment Transactions
 

Similar to No Free Lunch: Transactions in Online Games

BGF 2012 (Browsergames Forum)
BGF 2012 (Browsergames Forum)BGF 2012 (Browsergames Forum)
BGF 2012 (Browsergames Forum)Christof Wegmann
 
Getting Started with Real-time Analytics
Getting Started with Real-time AnalyticsGetting Started with Real-time Analytics
Getting Started with Real-time AnalyticsAmazon Web Services
 
Massively Social != Massively Multiplayer
Massively Social != Massively MultiplayerMassively Social != Massively Multiplayer
Massively Social != Massively MultiplayerPaul Furio
 
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisDay 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisAmazon Web Services
 
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...Amazon Web Services Korea
 
AWS Community Nordics Virtual Meetup
AWS Community Nordics Virtual MeetupAWS Community Nordics Virtual Meetup
AWS Community Nordics Virtual MeetupAnahit Pogosova
 
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017Amazon Web Services
 
(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
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Amazon Web Services
 
Harlan Beverly Lag The Barrier to innovation gdc austin 2009
Harlan Beverly Lag The Barrier to innovation gdc austin 2009Harlan Beverly Lag The Barrier to innovation gdc austin 2009
Harlan Beverly Lag The Barrier to innovation gdc austin 2009Harlan Beverly
 
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops Team
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops TeamManaging 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops Team
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops TeamRedis Labs
 
AWS Webcast - Managing Big Data in the AWS Cloud_20140924
AWS Webcast - Managing Big Data in the AWS Cloud_20140924AWS Webcast - Managing Big Data in the AWS Cloud_20140924
AWS Webcast - Managing Big Data in the AWS Cloud_20140924Amazon Web Services
 
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)Amazon Web Services
 
Chirp 2010: Scaling Twitter
Chirp 2010: Scaling TwitterChirp 2010: Scaling Twitter
Chirp 2010: Scaling TwitterJohn Adams
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDogRedis Labs
 
Building a system for machine and event-oriented data - SF HUG Nov 2015
Building a system for machine and event-oriented data - SF HUG Nov 2015Building a system for machine and event-oriented data - SF HUG Nov 2015
Building a system for machine and event-oriented data - SF HUG Nov 2015Felicia Haggarty
 
IoT interoperability
IoT interoperabilityIoT interoperability
IoT interoperability1248 Ltd.
 
AWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAmazon Web Services
 

Similar to No Free Lunch: Transactions in Online Games (20)

BGF 2012 (Browsergames Forum)
BGF 2012 (Browsergames Forum)BGF 2012 (Browsergames Forum)
BGF 2012 (Browsergames Forum)
 
Getting Started with Real-time Analytics
Getting Started with Real-time AnalyticsGetting Started with Real-time Analytics
Getting Started with Real-time Analytics
 
Massively Social != Massively Multiplayer
Massively Social != Massively MultiplayerMassively Social != Massively Multiplayer
Massively Social != Massively Multiplayer
 
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon KinesisDay 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
Day 5 - Real-time Data Processing/Internet of Things (IoT) with Amazon Kinesis
 
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...
Gam301 Real-Time Game Analytics with Amazon Redshift, Amazon Kinesis, and Ama...
 
AWS Community Nordics Virtual Meetup
AWS Community Nordics Virtual MeetupAWS Community Nordics Virtual Meetup
AWS Community Nordics Virtual Meetup
 
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017
Amazon Kinesis Platform – The Complete Overview - Pop-up Loft TLV 2017
 
(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...
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
 
Harlan Beverly Lag The Barrier to innovation gdc austin 2009
Harlan Beverly Lag The Barrier to innovation gdc austin 2009Harlan Beverly Lag The Barrier to innovation gdc austin 2009
Harlan Beverly Lag The Barrier to innovation gdc austin 2009
 
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops Team
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops TeamManaging 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops Team
Managing 50K+ Redis Databases Over 4 Public Clouds ... with a Tiny Devops Team
 
AWS Webcast - Managing Big Data in the AWS Cloud_20140924
AWS Webcast - Managing Big Data in the AWS Cloud_20140924AWS Webcast - Managing Big Data in the AWS Cloud_20140924
AWS Webcast - Managing Big Data in the AWS Cloud_20140924
 
Making Sense of Remote Sensing
Making Sense of Remote SensingMaking Sense of Remote Sensing
Making Sense of Remote Sensing
 
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)
AWS re:Invent 2016: Introduction to Managed Database Services on AWS (DAT307)
 
Chirp 2010: Scaling Twitter
Chirp 2010: Scaling TwitterChirp 2010: Scaling Twitter
Chirp 2010: Scaling Twitter
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 
Traitement d'événements
Traitement d'événementsTraitement d'événements
Traitement d'événements
 
Building a system for machine and event-oriented data - SF HUG Nov 2015
Building a system for machine and event-oriented data - SF HUG Nov 2015Building a system for machine and event-oriented data - SF HUG Nov 2015
Building a system for machine and event-oriented data - SF HUG Nov 2015
 
IoT interoperability
IoT interoperabilityIoT interoperability
IoT interoperability
 
AWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon KinesisAWS Webcast - Introduction to Amazon Kinesis
AWS Webcast - Introduction to Amazon Kinesis
 

More from James Gwertzman

Introducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOpsIntroducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOpsJames Gwertzman
 
OMG! Zombies on the Great Wall of China!
OMG! Zombies on the Great Wall of China!OMG! Zombies on the Great Wall of China!
OMG! Zombies on the Great Wall of China!James Gwertzman
 
Fail Fast: PopCap's Approach to Quality
Fail Fast: PopCap's Approach to QualityFail Fast: PopCap's Approach to Quality
Fail Fast: PopCap's Approach to QualityJames Gwertzman
 
The Making of PopCap's Plants vs Zombies
The Making of PopCap's Plants vs ZombiesThe Making of PopCap's Plants vs Zombies
The Making of PopCap's Plants vs ZombiesJames Gwertzman
 
Social Games in China - The New Import/Export Business!
Social Games in China - The New Import/Export Business!Social Games in China - The New Import/Export Business!
Social Games in China - The New Import/Export Business!James Gwertzman
 
Lessons learned from SNS games at PopCap
Lessons learned from SNS games at PopCapLessons learned from SNS games at PopCap
Lessons learned from SNS games at PopCapJames Gwertzman
 
What to do when it all goes to hell
What to do when it all goes to hellWhat to do when it all goes to hell
What to do when it all goes to hellJames Gwertzman
 
Definitive Guide To Funding Your Video Game Masterpiece
Definitive Guide To Funding Your Video Game MasterpieceDefinitive Guide To Funding Your Video Game Masterpiece
Definitive Guide To Funding Your Video Game MasterpieceJames Gwertzman
 
Pop Cap’s First Year In China
Pop Cap’s First Year In ChinaPop Cap’s First Year In China
Pop Cap’s First Year In ChinaJames Gwertzman
 

More from James Gwertzman (11)

Optimizing for Change
Optimizing for ChangeOptimizing for Change
Optimizing for Change
 
Introducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOpsIntroducing PlayFab -- Effective LiveOps
Introducing PlayFab -- Effective LiveOps
 
OMG! Zombies on the Great Wall of China!
OMG! Zombies on the Great Wall of China!OMG! Zombies on the Great Wall of China!
OMG! Zombies on the Great Wall of China!
 
Fail Fast: PopCap's Approach to Quality
Fail Fast: PopCap's Approach to QualityFail Fast: PopCap's Approach to Quality
Fail Fast: PopCap's Approach to Quality
 
The Making of PopCap's Plants vs Zombies
The Making of PopCap's Plants vs ZombiesThe Making of PopCap's Plants vs Zombies
The Making of PopCap's Plants vs Zombies
 
Social Games in China - The New Import/Export Business!
Social Games in China - The New Import/Export Business!Social Games in China - The New Import/Export Business!
Social Games in China - The New Import/Export Business!
 
Lessons learned from SNS games at PopCap
Lessons learned from SNS games at PopCapLessons learned from SNS games at PopCap
Lessons learned from SNS games at PopCap
 
Career Day Advice
Career Day AdviceCareer Day Advice
Career Day Advice
 
What to do when it all goes to hell
What to do when it all goes to hellWhat to do when it all goes to hell
What to do when it all goes to hell
 
Definitive Guide To Funding Your Video Game Masterpiece
Definitive Guide To Funding Your Video Game MasterpieceDefinitive Guide To Funding Your Video Game Masterpiece
Definitive Guide To Funding Your Video Game Masterpiece
 
Pop Cap’s First Year In China
Pop Cap’s First Year In ChinaPop Cap’s First Year In China
Pop Cap’s First Year In China
 

Recently uploaded

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 

Recently uploaded (20)

Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 

No Free Lunch: Transactions in Online Games

  • 1. No  Free  Lunch   Transac/ons  in  Online  Games   James  Gwertzman   (formerly  PopCap/EA)   Chief  evangelist,  Code.org     HPTS  2013  
  • 2. Pay  up  front   Free   Mul/player  Singleplayer  
  • 3. Top  10  highest  grossing  iPhone  games   Source:  ThinkGaming  
  • 4. 1997   2009   2013  2004   •  PC-­‐based  MMORPG   •  150-­‐200K  subscribers   •  67K  peak  concurrent   •  Custom  servers   •  Flat  file  storage   •  Data  center   •  Minimal  analy/cs   •  Subscrip/on   •  PC-­‐based  MMORPG   •  12M  subscribers  (2010)   •  1M  peak  concurrent   (7K  per  server)   •  Custom  servers   •  RDBMS  storage   •  Data  center   •  Minimal  analy/cs   •  Subscrip/on   •  Web-­‐based  casual  game   •  80M  monthly  ac/ve   •  30M  daily  ac/ve   •  LAMP  stack  servers   •  RDBMS  storage   •  AWS  cloud   •  Heavy  analy/cs   •  Free  to  play   •  Mobile  casual  game   •  25M  downloads   •  ???  daily  ac/ve   •  LAMP  stack  servers   •  RDBMS  +  NoSQL   •  Data  center   •  Heavy  analy/cs   •  Free  to  play  
  • 5. WoW  Architecture   Gaming  Client   Login  Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server   Game   Server  
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Main   Database   Read-­‐only   Slave   Read-­‐only   Slave   Read-­‐only   Slave   Game   processing…   Replica/on   Wri/ng   back  data  to master  DB   Up  to  2  hour   delay  
  • 11.
  • 13. Fixes   Before   A(er   1  database   20  databases  (w/  hash  on  user  ID)   Physical  hardware   Virtual  servers   Single  connec/on  to  shared  ID  system   Mul/ple  VPN’s  into  shared  ID  system   Support  manually  fixing  corrupt  user  data   Fixed  root  cause  of  corrupt  user  data   EA  Central  Services   Central  User   ID  Service   Game  Server    /   Database(s)  
  • 14.
  • 16. Things  they  did  right   •  Tes/ng,  tes/ng,  and  more  tes/ng   – Used  AWS  to  set  up  1000’s  of  nodes,  millions  of  users   – Found  problems  w/  concurrent  connec/ons   – Fixes:  OS  level  tuning,  op/mize  network  code,  add   more  hardware,  upgrade  load  balancer   •  Shrank  save-­‐game  payload  (30K-­‐>3.5K)   •  Architected  right  from  start   – User  data:  shards   – Analy/cs-­‐>Logs-­‐>Hadoop-­‐>Data  Warehouse  (cube)  
  • 17.
  • 18. Trends   •  Tes/ng  is  HARD  but  CRITICAL   – Scale  =  millions  of  users   – Use  real  “user  stories”  –  end-­‐to-­‐end  cases   – Semng  up  test  (adding  10M  records)  takes  days   •  Analy/cs  =  more  and  more  transac/ons   – More  than  half  of  all  transac/ons  now…   – Understand  what’s  going  on  inside  the  game   – Especially  w/  shin  to  free-­‐to-­‐play  
  • 19. Summary  of  Challenges   •  Writes  >  Reads   •  Dependencies  on  external  services   •  Transac/ons  growing  faster  than  users   •  Unsophis/cated  developers  
  • 20. Off-­‐the-­‐shelf  tech  roundup   Web  Server   nginx,  apache   Storage   MySQL,  MongoDB,  zBase   Mul/player  Server   SmartFox,  Photon