Top Banner
TO MILLIONS OF SUMMONERS SCOTT DELAP SCALABILITY ARCHITECT GDC 2012
60

TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Aug 26, 2018

Download

Documents

buiphuc
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

TO MILLIONS OF SUMMONERS SCOTT DELAP SCALABILITY ARCHITECT GDC 2012

Page 2: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

ABOUT ME – SCOTT DELAP

Scalability Architect

Joined Riot in 2008

About a year before beta

@scottdelap

[email protected]

Page 3: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

ABOUT RIOT GAMES

500+ EMPLOYEES

OFFICES IN SANTA MONICA,

ST. LOUIS, DUBLIN, SEOUL

FOUNDED SEPT.2006

Page 4: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

OUR MISSION

TO BE THE MOST PLAYER-FOCUSED GAME COMPANY IN THE WORLD.

Page 5: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly
Page 6: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LEAGUE OF LEGENDS: INTRO

July 2011

15 MIL REGISTERED

4 MIL MONTHLY

1.4 MIL DAILY

0.5 MIL PEAK CCU

3.7 MIL DAILY HRS

November 2011

32.5 MIL REGISTERED

11.5 MIL MONTHLY

4.2 MIL DAILY

1.3 MIL PEAK CCU

10.5 MIL DAILY HRS

Page 7: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

A UNIQUE SCALING CHALLENGE

Social elements

require uniform access

Crafting an enjoyable

user experience

GAME FEATURES

DO NOT ALWAYS SUPPORT

TRADITIONAL DECOMPOSITION

Page 8: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

MEETS THESE NEEDS?

Page 9: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AGENDA

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 10: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

HOW DO WE DEVELOP A

SYSTEM RAPIDLY…

…WHILE PLANNING FOR

FUTURE CAPACITY NEEDS?

PROBLEM #1:

Page 11: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LEAGUE OF LEGENDS: TECH OVERVIEW

CLIENT EXPERIENCE

PvP.net Adobe Air Flex Game Client C DirectX

SERVER SIDE STACK

Apache Tomcat

Spring

ActiveMQ

Coherence

Hibernate

MySQL

PHP

Cake

MySQL

Game Servers

Game Servers

Game Servers

Game Servers

Page 12: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

TODAY’S FOCUS

CLIENT EXPERIENCE

PvP.net Adobe Air Flex Game Client C DirectX

SERVER SIDE STACK

Apache Tomcat

Spring

ActiveMQ

Coherence

Hibernate

MySQL

PHP

Cake

MySQL

Game Servers

Game Servers

Game Servers

Game Servers

Page 13: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

A TECH STACK WITH NEW AND OLD ELEMENTS

MySQL

Apache Tomcat

Spring

Apache Tomcat

Spring

Apache Tomcat

Spring

Coherence

Hibernate

Coherence

Hibernate

Coherence

Hibernate

Coherence

Hibernate

Page 14: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

BENEFITS OF TRADITIONAL JAVA

MATURE OPEN SOURCE

ECOSYSTEM

ESTABLISHED TOOLS

LARGE POOL OF TALENTED

DEVELOPERS

Page 15: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

ACCELERATING THE FOUNDATION WITH NoSQL

NoSQL SOLUTION ORACLE COHERENCE

DATA STORED IN CACHES BY KEY

NUMEROUS USES

PROVIDES ELASTICITY

Page 16: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

NoSQL ENABLING RAPID GROWTH

Horizontal scaling of Coherence greatly simplified absorbing CCU growth over time

1

Design patterns enforced by Coherence promoted feature level scaling as well

2

Page 17: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

CACHING IN DETAIL

SHARDING LOGIC AT APPLICATION LEVEL

COHERENCE

DAO

MySQL

HIBERNATE

Page 18: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

COHERENCE

EMBRACING CACHE ADVANTAGES

DAO

MySQL

HIBERNATE

Page 19: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

COHERENCE

EMBRACING CACHE ADVANTAGES

DAO

MySQL

HIBERNATE

Page 20: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LEVERAGING ADVANTAGES

GRID COMPUTING

TRANSPARENT

PARTITIONING

Page 21: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AGENDA

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 22: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

HOW DO WE QUICKLY

DEVELOP NEW FEATURES…

…WHILE LIMITING BUGS?

PROBLEM #2:

Page 23: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

SIMPLE IS BEST

JAVA

MEMORY

NETWORK

MODERN

CPU 3 BILLION INSTRUCTIONS/SECOND

FAST

Page 24: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Complexity is the enemy of quality

DON’T OVER DESIGN

Page 25: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

RIG THE GAME

Divide inputs of algorithm,

then parallel process Continually coordinate

Page 26: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

RIG THE GAME

THREAD 1 THREAD 2

Coordination

Coordination

Coordination

Data

Data

Data

Data

Data

Work

Work

Work

Work

Work

Work

Work

Work

Work

Work

Page 27: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

RIG THE GAME

Data Data Data Data Data

THREAD 1 THREAD 2

Page 28: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

RIG THE GAME

THREAD 1 THREAD 2

Data Work

Data Work

Data Work

Work

Work

Data Work

Data Work

Data Work

Work

Work

Page 29: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AGENDA

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 30: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

HOW DO WE HANDLE NOT JUST

MONTHLY CHANGE…

…BUT HOURLY CHANGE?

PROBLEM #3:

Page 31: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

HARDWARE FAILURES

CODE A DYNAMIC SYSTEM

LARGE SYSTEM

CHANGES AS

IT’S RUNNING

Page 32: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

FIX?

HARDWARE FAILURES

CODE A DYNAMIC SYSTEM

LARGE SYSTEM

CHANGES AS

IT’S RUNNING

Next release?

During downtime?

Page 33: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

FIX?

HARDWARE FAILURES

CODE A DYNAMIC SYSTEM

LARGE SYSTEM

CHANGES AS

IT’S RUNNING

Next release?

During downtime?

Page 34: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

CODE A DYNAMIC SYSTEM

Dynamic Cluster

Recomposition

Stateless Growth

Patterns

TECHNOLOGIES W/

ELASTIC PROPERTIES

NOT EVERY PIECE OF YOUR STACK HAS TO BE ELASTIC

Page 35: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

All relevant configuration properties are dynamic

1

Coherence near caches used to propagate changes to nodes dynamically

2

Algorithms written so they are aware their variables may change while running

3

CODE A DYNAMIC SYSTEM

Page 36: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LARGER EXAMPLES OF DYNAMIC BEHAVIOR

Hotfixes require less downtime Features can be deployed in advance of

release windows

Entire machine/feature combinations can be deployed & updated

THREAD POOLS

= DYNAMICALLY CONFIGURABLE

Page 37: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AGENDA

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 38: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

WHAT HAPPENS WHEN WE

FOLLOW ALL THE RULES…

…AND STILL RUN

INTO ISSUES?

PROBLEM #4:

Page 39: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

SCALING BEST PRACTICES HAVE CONSEQUENCES

Scaling is hard 1

Let’s get rid of some things so can do this easier 2

What do we get rid of? I can’t decide… 3

Plan B…instead of what you can’t do, I’ll tell you what you can 4

Follow these X rules and everything will be fine 5

Page 40: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

If all problems can

be written with a

map step and a

reduce step…

MAP REDUCE

I’m taking away

your joins…

NoSQL

Pick two…

CAP

SCALING BEST PRACTICES HAVE CONSEQUENCES

Page 41: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Blog Entry

CONSEQUENCES

ATOMIC OPERATIONS OFTEN BECOME SCOPED

BY ENTRY VALUES AND ROOT OBJECTS

Page 42: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Blog Entry

CONSEQUENCES

ATOMIC OPERATIONS OFTEN BECOME SCOPED

BY ENTRY VALUES AND ROOT OBJECTS

COMMENT

Page 43: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Blog Entry

CONSEQUENCES

ATOMIC OPERATIONS OFTEN BECOME SCOPED

BY ENTRY VALUES AND ROOT OBJECTS

COMMENT

Page 44: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AN EXAMPLE OF A MISMATCH

SERVER ROOT OBJECT

AS GAMES ARE ALLOCATED,

CHILD OBJECTS ARE ADDED

Page 45: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

COMPLEXITY OF CHILD OBJECTS

GAMES PER SERVER

AN EXAMPLE OF A MISMATCH

Page 46: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

ROOT OBJECTS AND CHILD OBJECTS

MACHINE

Game Instance

Name Players State

Game Instance

Name Players State

Game Instance

Name Players State

Page 47: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

EVOLUTION OF AN ANTI-PATTERN

Child Object Child Object Child Object Child Object Child Object Child Object

MACHINE

2-50k 2-50k 2-50k 2-50k 2-50k 2-50k

<20k >500k

NETWORK TRANSFER FAST OBJECT SERIALIZATION

BOUNDING FACTORS

Page 48: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

THE PIPE IS FULL

MACHINE

Game

Instance

Game

Instance

Game

Instance

MACHINE

Game

Instance

Game

Instance

Game

Instance

MACHINE

Game

Instance

Game

Instance

Game

Instance

MACHINE

Game

Instance

Game

Instance

Game

Instance

MACHINE

Game

Instance

Game

Instance

Game

Instance

Page 49: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

DO WE REALLY HAVE ONE OBJECT?

Game Instance

Name Players

MACHINE

Game

Instance

State

Game

Instance

State

Game

Instance

State

Page 50: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

SMALLER IS BETTER!

MACHINE

Game Instance

State

Game Instance

State

Game Instance

State

MACHINE

Game Instance

State

Game Instance

State

Game Instance

State

MACHINE

Game Instance

State

Game Instance

State

Game Instance

State

MACHINE

Game Instance

State

Game Instance

State

Game Instance

State

MACHINE

Game Instance

State

Game Instance

State

Game Instance

State

Page 51: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AGENDA

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 52: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

HOW DO WE KNOW…

…WHEN WE HAVE A PROBLEM?

PROBLEM #5:

Page 53: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LOGS WITH MILLIONS

OF OPERATIONS/DAY

MONITOR EVERYTHING

VS.

Page 54: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

LOGS WITH MILLIONS

OF OPERATIONS/DAY

MONITOR EVERYTHING

VS.

Page 55: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

WHAT HAPPENED HERE?

Networking issue!

MONITOR EVERYTHING

Page 56: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

Automate metrics gathering 1

Spring performance monitoring interceptor 2

Log out call stack on external calls 3

Sample internal calls 4

Automate reporting 5

Trivial cost vs. benefit 6

MONITOR EVERYTHING

Page 57: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

…LETS GREP THE RED ITEMS…

DATA IS USELESS WITHOUT AN EASY WAY TO VIEW IT.

MONITOR EVERYTHING

Page 58: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

AUTOMATE NEXT

5 QUESTIONS/ANSWERS

(Why should they be manual?)

MONITOR EVERYTHING

Page 59: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

RECAP

EMBRACING JAVA AND NoSQL

SIMPLE IS BEST

CODE A DYNAMIC SYSTEM

SCALING BEST PRACTICES

MONITOR EVERYTHING

Page 60: TO MILLIONS OF SUMMONERS - twvideo01.ubm-us.nettwvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming Track... · MySQL PHP Cake MySQL ... Horizontal scaling of Coherence greatly

SCOTT DELAP SCALABILITY ARCHITECT [email protected]

GDC 2012

www.riotgames.com/careers (We’re also in the Career Pavilion at booth #CP1813)