Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Invent 2013

Amazon Web Services
Amazon Web ServicesAmazon Web Services
Building a World in the Clouds
MMO Architecture on AWS
Jeffrey Berube
Director of Technical Operations
Red 5 Studios, Inc.

November 15, 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.
Overview
•
•
•
•
•

What is Firefall?
Why build in the cloud?
Infrastructure Goals
Evolution of the Platform
Tools for Success
What is Firefall?
• Free-to-play cooperative open world shooter
• “Shardless” world
• Instance-based maps
• Both persistent and transient map types
• Possible for many instances of a map to exist at the same time
• Free-to-play cooperative open world shooter
• “Shardless” world
• Instance-based maps
• Both persistent and transient map types
• Possible for many instances of a map to exist at the same time
• Free-to-play cooperative open world shooter
• “Shardless” world
• Instance-based maps
• Both persistent and transient map types
• Possible for many instances of a map to exist at the same time
Why?
Why build in the cloud?
• Players are unpredictable
• Developers are unpredictable
• Cyclical player behavior opens up opportunities
for significant cost savings
Why build in the cloud?
• Players are unpredictable
– Forecasts can be (and usually are) wrong
• Too little hardware, Too many players
– Bad for everyone

• Too much hardware, Too few players
– Good for players (sort of) but bad for the business

– What if they don’t stick around?

• Developers are unpredictable
• Cyclical player behavior opens up opportunities for
significant cost savings
Why build in the cloud?
• Players are unpredictable
• Developers are unpredictable
• Cyclical player behavior opens up opportunities
for significant cost savings
Why build in the cloud?
• Players are unpredictable
• Developers are unpredictable
– Active development has risks
• Performance can change drastically
• New services can “appear” the day of the patch

– MMOs are ALWAYS being actively developed!
• (If you want to be successful…)

• Cyclical player behavior opens up opportunities
for significant cost savings
Why build in the cloud?
• Players are unpredictable
• Developers are unpredictable
• Cyclical player behavior opens up opportunities
for significant cost savings
Player Graph
36 Hours
Player Graph with Server Overlay
Player Graph with Efficient Server Overlay
35%–37.5% Savings
Infrastructure Goals
Infrastructure Goals
Deployment and Recovery

Platform

How do we make site
management better?

How can the platform make
the player experience better?

•
•
•
•

Expansion
Scalability
Disaster Recovery
Self-Healing

• Downtime
• Player Mobility
Infrastructure Goals:
Deployment and Recovery
Deployment and Recovery Goals
•
•
•
•

Quick regional expansion
On-demand scalability
Disaster recovery with minimal downtime
Self-healing
Deployment and Recovery Goals
• Quick regional expansion
– Traditionally, expansion is a multi-month process
• Contracts, Purchase and Shipping, Installation, etc.

– Today, adding a region is about a week long task
• Additional improvements are in the works

• On-demand scalability
• Disaster recovery with minimal downtime
• Self-healing
Deployment and Recovery Goals
•
•
•
•

Quick regional expansion
On-demand scalability
Disaster recovery with minimal downtime
Self-healing
Deployment and Recovery Goals
• Quick regional expansion
• On-demand scalability
– Automated scale up and down without* limits
• Instance sizes desired may not always be available, however

• Disaster recovery with minimal downtime
• Self-healing
Deployment and Recovery Goals
•
•
•
•

Quick regional expansion
On-demand scalability
Disaster recovery with minimal downtime
Self-healing
Deployment and Recovery Goals
• Quick regional expansion
• On-demand scalability
• Disaster recovery with minimal downtime
– Traditionally, DR sites are expensive and are not always
properly maintained
– Our goal is to automate disaster recovery safely
• We do a lot manually at present

• Self-healing
Deployment and Recovery Goals
•
•
•
•

Quick regional expansion
On-demand scalability
Disaster recovery with minimal downtime
Self-healing
Infrastructure Goals:
Platform
Platform Goals
• Zero downtime game updates
• Players can play globally without restrictions
Platform Goals
• Zero downtime game updates
– Blue-Green deployment
– Doesn’t preclude scheduled maintenance
• Some things are more safely done offline

• Players can play globally without restrictions
Platform Goals
• Zero downtime game updates
• Players can play globally without restrictions
Platform Goals
• Zero downtime game updates
• Players can play globally without restrictions
– Characters won’t be held hostage
• Player data is available everywhere they want to be
• We don’t charge a player so that they can play with their friends

– Prefer closest healthy region, however
Evolution of the Platform
The Beginning
March 2011
INET

The Beginning
March 2011
AWS Services in Use

Outside-Game

AWS

Elastic Compute Cloud (EC2)

US-West-1

CORP

Availability Zone: b
Alpha
October 2011
INET
Operator

Alpha
October 2011

AWS ELB

AWS Services in Use
Mx

HP

Outside-Game
HP
PvP

HP
MM

HP

HP

Inside-LB
Chef

Ic

I

I

C

Ar

Inside-Core

Log

U

Ad

Inside-App
C

U

Ad

Inside-DB
Availability Zone: b

US-West-1

CORP

HP

Outside-LB

Inside-Game

AWS

MD

MCP

Elastic Compute Cloud (EC2)
Simple Storage Service (S3)
Elastic Load Balancing (ELB)
Simple Queue Service (SQS)
Closed Beta
April 2012
INET

Closed Beta
April 2012

Operator AWS ELB

AWS Services in Use
OW

PvP

HP

HP

Outside-Game

Outside-Game

MM

Outside-LB

HP

HP

Inside-LB

HP

Inside-Game

Outside-LB

MD
MM

HP

HP

Inside-LB

MCP

Inside-Game

HP

HP
HP

Chef
I

Ic
Gr

Inside-Core

Log

C

U

I

C

U

Ar

Ad

S

Ar

Ad

S

Inside-App
Availability Zone: b

AWS RDS

Inside-App
Availability Zone: c

Elastic Compute Cloud (EC2)
Simple Storage Service (S3)
Elastic Load Balancing (ELB)
Simple Queue Service (SQS)
Relational Database Service (RDS)
ElastiCache

AWS

PvP

HP

US-West-1

CORP

OW

HP
Gamescom
August 2012
INET
Operator

Gamescom
August 2012

AWS ELB

AWS Services in Use
OW

NPE

PvE

EU-West-1

PvP
HP

HP

HP

Outside-Game

Task Task Task

MD

MM

Inside-Game

Log

Ic

C

U

Ar

L

In

Ad

Co

S

A

P

W

I

Chef

C

U

A

P

Gr

Log

Ic

Outside-LB

I

Inside-AppTasks

Chef

AWS ELB

Gr

Inside-Core

VPC

Inside-Core

AWS

MCP

Inside-App
W

Inside-DB
Availability Zone: b
US-West-2

CORP

US-East-1
US-West-2

Elastic Compute Cloud (EC2)
Simple Storage Service (S3)
Elastic Load Balancing (ELB)
Simple Queue Service (SQS)
Relational Database Service (RDS)
ElastiCache
CloudFront
Virtual Private Cloud (VPC)

HQ
Open Beta
July 2013
INET
Operator

Open Beta
July 2013

AWS ELB

AWS Services in Use
ES

ES

ES

OW

NPE

PvE

EU-West-1

PvP
HP

MCP

MD

MM

HP

HP

Inside-LB

Log

Ic

C

U

Ar

L

In

Ad

Co

S

A

P

W

C

U

A

P

Gr

Log

Gr

Inside-Core

Inside-Core

VPC
US-East-1
Ops

US-East-1

Outside-LB

I

Chef

VPC

HP

I

Inside-AppTasks

Ic

HP

Inside-Game

Task Task Task

Chef

HP

Outside-Game

Inside-Search

AWS

ES

ES

Inside-App
W

Inside-DB
Availability Zone: b

US-West-2

CORP

ES

HQ

Elastic Compute Cloud (EC2)
Simple Storage Service (S3)
Elastic Load Balancing (ELB)
Simple Queue Service (SQS)
CloudFront
Virtual Private Cloud (VPC)
Elastic MapReduce (EMR)
Today
November 2013
INET
Operator

Today
November 2013

AWS ELB

AWS Services in Use
ES

ES

ES

ES

ES

ES

OW

NPE

PvE

EU-West-1

PvP
HP

Outside-Game
MD

MM

Chef

Log

Ic
Ic

Inside-LB

C

U

Ar

L

In

Ad

Co

S

A

P

W

Gr

Log

Gr

VPC

Inside-Core
VPC

US-East-1
Ops

AP-NorthEast-1

Inside-App
C

Inside-Core

US-East-1

Outside-LB

I

Inside-AppTasks

Chef

HP

Inside-Game

AWS

MCP
Task Task Task

A

P

Inside-DB
Availability Zone: b

US-West-2

SA-East-1

CORP

Inside-Search

HQ

Elastic Compute Cloud (EC2)
Simple Storage Service (S3)
Elastic Load Balancing (ELB)
Simple Queue Service (SQS)
CloudFront
Virtual Private Cloud (VPC)
Elastic MapReduce (EMR)
Tools for Success
Third-party Tools
•
•
•
•
•
•
•
•
•

Opscode Chef
collectd
Icinga (Nagios)
Graphite
Graylog2
HAProxy
Keepalived
elasticsearch
Others (Bluepill, Thin, memcached, RabbitMQ, etc.)
Third-party Services
• Dyn
– Global Load Balancing
– DNS Failover

• PagerDuty
– On-call scheduling
– Phone calls!

• Pingdom
– Transaction monitoring

• Duo Security
Internal Tools
• Architect
• Cartographer
• Dashboards (Everywhere)
Internal Tools
• Architect
– Everything heartbeats
– Service-specific data aggregation

• Cartographer
• Dashboards (Everywhere)
Internal Tools
• Architect
• Cartographer
• Dashboards (Everywhere)
Internal Tools
• Architect
• Cartographer
– Builds new game server stacks
– Replaces failed game server components
– Scales up (or down) the servers within a pool depending on
player demand

• Dashboards (Everywhere)
Internal Tools
• Architect
• Cartographer
• Dashboards (Everywhere)
Internal Tools
• Architect
• Cartographer
• Dashboards (Everywhere)
– Multiple data sources
• Graphite
• Production databases
• Business Intelligence databases
Please give us your feedback on this
presentation

MBL304
As a thank you, we will select prize
winners daily for completed surveys!
1 of 53

Recommended

[KGC 2012] Online Game Server Architecture Case Study Performance and Security by
[KGC 2012] Online Game Server Architecture Case Study Performance and Security[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and SecuritySeungmin Shin
6.4K views109 slides
Making an independend MMO - The Albion Online Story by
Making an independend MMO - The Albion Online StoryMaking an independend MMO - The Albion Online Story
Making an independend MMO - The Albion Online StoryDavid Salz
1.8K views43 slides
Learned from KIND by
Learned from KIND Learned from KIND
Learned from KIND HungWei Chiu
102 views56 slides
게임 분산 서버 구조 by
게임 분산 서버 구조게임 분산 서버 구조
게임 분산 서버 구조Hyunjik Bae
37.7K views35 slides
NoSQL 위에서 MMORPG 개발하기 by
NoSQL 위에서 MMORPG 개발하기NoSQL 위에서 MMORPG 개발하기
NoSQL 위에서 MMORPG 개발하기Hoyoung Choi
4.9K views134 slides
MMO Design Architecture by Andrew by
MMO Design Architecture by AndrewMMO Design Architecture by Andrew
MMO Design Architecture by AndrewAgate Studio
4.5K views39 slides

More Related Content

What's hot

양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012 by
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012devCAT Studio, NEXON
3.5K views63 slides
쿠키런 1년, 서버개발 분투기 by
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기Brian Hong
109.6K views43 slides
Windows container security by
Windows container securityWindows container security
Windows container securityDocker, Inc.
3.7K views40 slides
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1 by
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
5.1K views65 slides
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3 by
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3Heungsub Lee
13.5K views251 slides
중앙 서버 없는 게임 로직 by
중앙 서버 없는 게임 로직중앙 서버 없는 게임 로직
중앙 서버 없는 게임 로직Hoyoung Choi
8.2K views111 slides

What's hot(20)

양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012 by devCAT Studio, NEXON
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
쿠키런 1년, 서버개발 분투기 by Brian Hong
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기
Brian Hong109.6K views
Windows container security by Docker, Inc.
Windows container securityWindows container security
Windows container security
Docker, Inc.3.7K views
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1 by Simon Hade
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
Simon Hade5.1K views
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3 by Heungsub Lee
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
〈야생의 땅: 듀랑고〉 서버 아키텍처 Vol. 3
Heungsub Lee13.5K views
중앙 서버 없는 게임 로직 by Hoyoung Choi
중앙 서버 없는 게임 로직중앙 서버 없는 게임 로직
중앙 서버 없는 게임 로직
Hoyoung Choi8.2K views
[IGC2018] 에이스프로젝트 안현석 - 유니티로 실시간 멀티플레이 게임서버를 만들 수 있을까? by 강 민우
[IGC2018] 에이스프로젝트 안현석 - 유니티로 실시간 멀티플레이 게임서버를 만들 수 있을까?[IGC2018] 에이스프로젝트 안현석 - 유니티로 실시간 멀티플레이 게임서버를 만들 수 있을까?
[IGC2018] 에이스프로젝트 안현석 - 유니티로 실시간 멀티플레이 게임서버를 만들 수 있을까?
강 민우3.6K views
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지 by Minjung Ko
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
[NDC2017] 뛰는 프로그래머 나는 언리얼 엔진 - 언알못에서 커미터까지
Minjung Ko3.6K views
Space Ape's Analytics Stack by Simon Hade
Space Ape's Analytics StackSpace Ape's Analytics Stack
Space Ape's Analytics Stack
Simon Hade10.9K views
1인개발자가되기전알아야할것들 by Jinsub Jung
1인개발자가되기전알아야할것들1인개발자가되기전알아야할것들
1인개발자가되기전알아야할것들
Jinsub Jung35.4K views
게임서버 구축 방법비교 : GBaaS vs. Self-hosting by iFunFactory Inc.
게임서버 구축 방법비교 : GBaaS vs. Self-hosting게임서버 구축 방법비교 : GBaaS vs. Self-hosting
게임서버 구축 방법비교 : GBaaS vs. Self-hosting
iFunFactory Inc.5.1K views
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오... by Amazon Web Services Korea
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
온라인 게임 처음부터 끝까지 동적언어로 만들기 by Seungjae Lee
온라인 게임 처음부터 끝까지 동적언어로 만들기온라인 게임 처음부터 끝까지 동적언어로 만들기
온라인 게임 처음부터 끝까지 동적언어로 만들기
Seungjae Lee7.7K views
Next-generation MMORPG service architecture by Jongwon Kim
Next-generation MMORPG service architectureNext-generation MMORPG service architecture
Next-generation MMORPG service architecture
Jongwon Kim7.1K views
Transforming Accessibility one lunch at a tiime - CSUN 2023 by Ted Drake
Transforming Accessibility one lunch at a tiime - CSUN 2023Transforming Accessibility one lunch at a tiime - CSUN 2023
Transforming Accessibility one lunch at a tiime - CSUN 2023
Ted Drake183 views
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버 by Heungsub Lee
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
Heungsub Lee50.2K views
Deterministic Simulation - What modern online games can learn from the Game B... by David Salz
Deterministic Simulation - What modern online games can learn from the Game B...Deterministic Simulation - What modern online games can learn from the Game B...
Deterministic Simulation - What modern online games can learn from the Game B...
David Salz1.4K views
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019 by devCAT Studio, NEXON
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
김동건, 할머니가 들려주신 마비노기 개발 전설, NDC2019
devCAT Studio, NEXON13.2K views
임태현, 게임 서버 디자인 가이드, NDC2013 by devCAT Studio, NEXON
임태현, 게임 서버 디자인 가이드, NDC2013임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013
devCAT Studio, NEXON20.1K views
송창규, unity build로 빌드타임 반토막내기, NDC2010 by devCAT Studio, NEXON
송창규, unity build로 빌드타임 반토막내기, NDC2010송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010
devCAT Studio, NEXON32.1K views

Viewers also liked

TERA Server Architecture by
TERA Server ArchitectureTERA Server Architecture
TERA Server Architectureujentus
11.6K views22 slides
Mmorpg by
MmorpgMmorpg
MmorpgTímea Kovács
1.3K views11 slides
Anatomy of the MMO by
Anatomy of the MMOAnatomy of the MMO
Anatomy of the MMOGeorge Dolbier
1.3K views28 slides
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin... by
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...l xf
2.4K views16 slides
Intro to Massively Multiplayer Online Game (MMOG) Design by
Intro to Massively Multiplayer Online Game (MMOG) DesignIntro to Massively Multiplayer Online Game (MMOG) Design
Intro to Massively Multiplayer Online Game (MMOG) DesignChristopher Mohritz
5.4K views29 slides
3D Graphics & Rendering in Computer Graphics by
3D Graphics & Rendering in Computer Graphics3D Graphics & Rendering in Computer Graphics
3D Graphics & Rendering in Computer GraphicsFaraz Akhtar
8.3K views10 slides

Viewers also liked(20)

TERA Server Architecture by ujentus
TERA Server ArchitectureTERA Server Architecture
TERA Server Architecture
ujentus11.6K views
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin... by l xf
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...
A Virtual World Distributed Server Developed In Erlang As A Tool For Analysin...
l xf2.4K views
Intro to Massively Multiplayer Online Game (MMOG) Design by Christopher Mohritz
Intro to Massively Multiplayer Online Game (MMOG) DesignIntro to Massively Multiplayer Online Game (MMOG) Design
Intro to Massively Multiplayer Online Game (MMOG) Design
Christopher Mohritz5.4K views
3D Graphics & Rendering in Computer Graphics by Faraz Akhtar
3D Graphics & Rendering in Computer Graphics3D Graphics & Rendering in Computer Graphics
3D Graphics & Rendering in Computer Graphics
Faraz Akhtar8.3K views
Beyond the Client-Server Architectures: A Survey of Mobile Cloud Techniques by Dejan Kovachev
Beyond the Client-Server Architectures: A Survey of Mobile Cloud TechniquesBeyond the Client-Server Architectures: A Survey of Mobile Cloud Techniques
Beyond the Client-Server Architectures: A Survey of Mobile Cloud Techniques
Dejan Kovachev1.4K views
[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox se... by AiTi Education
[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox se...[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox se...
[Vietnam Mobile Day 2013] - Phát triển ứng dụng game đa nền tảng smart fox se...
AiTi Education1.8K views
A practical architecture design for MMO casual game by we20
A practical architecture design for MMO casual gameA practical architecture design for MMO casual game
A practical architecture design for MMO casual game
we20883 views
Social Networking In MMOG‘s by CCPWhisper
Social Networking In MMOG‘sSocial Networking In MMOG‘s
Social Networking In MMOG‘s
CCPWhisper2.2K views
MMOTraffic - The Leading MMO Marketing Partner by MMO Traffic
MMOTraffic -  The Leading MMO Marketing PartnerMMOTraffic -  The Leading MMO Marketing Partner
MMOTraffic - The Leading MMO Marketing Partner
MMO Traffic887 views
Game Traffic Analysis: An MMORPG Perspective by Academia Sinica
Game Traffic Analysis: An MMORPG PerspectiveGame Traffic Analysis: An MMORPG Perspective
Game Traffic Analysis: An MMORPG Perspective
Academia Sinica2.4K views
Online games: a real-time problem for the network by Jose Saldana
Online games: a real-time problem for the networkOnline games: a real-time problem for the network
Online games: a real-time problem for the network
Jose Saldana1.9K views
Online games traffic characterization and network support by Jose Saldana
Online games traffic characterization and network supportOnline games traffic characterization and network support
Online games traffic characterization and network support
Jose Saldana4.2K views
(GAM201) Scalable Game Architectures That Don't Break the Bank | AWS re:Inven... by Amazon Web Services
(GAM201) Scalable Game Architectures That Don't Break the Bank | AWS re:Inven...(GAM201) Scalable Game Architectures That Don't Break the Bank | AWS re:Inven...
(GAM201) Scalable Game Architectures That Don't Break the Bank | AWS re:Inven...
Amazon Web Services5.9K views
A Practical Architecture Design for MMO Casual Game by action.vn
A Practical Architecture Design for MMO Casual GameA Practical Architecture Design for MMO Casual Game
A Practical Architecture Design for MMO Casual Game
action.vn7.4K views
elixirを使ったゲームサーバ by Hidetaka Kojo
elixirを使ったゲームサーバelixirを使ったゲームサーバ
elixirを使ったゲームサーバ
Hidetaka Kojo15.9K views

Similar to Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Invent 2013

IIMB presentation by
IIMB presentationIIMB presentation
IIMB presentationAveekshith Bushan
239 views27 slides
(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2 by
(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2
(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2Amazon Web Services
3.7K views54 slides
KGC 2013 AWS Keynote by
KGC 2013 AWS KeynoteKGC 2013 AWS Keynote
KGC 2013 AWS KeynoteAmazon Web Services Korea
1.1K views37 slides
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле... by
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Ontico
2K views139 slides
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBM by
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBMEclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBM
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBMmfrancis
791 views13 slides
Write retrogames in the web and add something more with Azure by
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with AzureMarco Parenzan
147 views60 slides

Similar to Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Invent 2013(20)

(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2 by Amazon Web Services
(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2
(GAM404) Hunting Monsters in a Low-Latency Multiplayer Game on EC2
Amazon Web Services3.7K views
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле... by Ontico
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Ontico2K views
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBM by mfrancis
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBMEclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBM
Eclipse the Rich Client Platform - Jeff McAffer, Eclipse Architect, IBM
mfrancis791 views
Write retrogames in the web and add something more with Azure by Marco Parenzan
Write retrogames in the web and add something more with AzureWrite retrogames in the web and add something more with Azure
Write retrogames in the web and add something more with Azure
Marco Parenzan147 views
Game Programming - Cloud Development by Nick Pruehs
Game Programming - Cloud DevelopmentGame Programming - Cloud Development
Game Programming - Cloud Development
Nick Pruehs489 views
Worldwide Local Latency With ScyllaDB by ScyllaDB
Worldwide Local Latency With ScyllaDB Worldwide Local Latency With ScyllaDB
Worldwide Local Latency With ScyllaDB
ScyllaDB486 views
201507131408448146 by Mason Mei
201507131408448146201507131408448146
201507131408448146
Mason Mei222 views
Designing a pragmatic back-end service for mobile games by iFunFactory Inc.
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile games
iFunFactory Inc.2.3K views
Improving the VR experience - VRST 2012 by Sebastien Kuntz
Improving the VR experience - VRST 2012Improving the VR experience - VRST 2012
Improving the VR experience - VRST 2012
Sebastien Kuntz2.4K views
Building a scalable API with Grails by Tanausu Cerdeña
Building a scalable API with GrailsBuilding a scalable API with Grails
Building a scalable API with Grails
Tanausu Cerdeña8.1K views
A Holistic Approach to HTML5 Game Design & Development by Karl Bunyan
A Holistic Approach to HTML5 Game Design & DevelopmentA Holistic Approach to HTML5 Game Design & Development
A Holistic Approach to HTML5 Game Design & Development
Karl Bunyan2.1K views
(GAM301) Real-Time Game Analytics with Amazon Kinesis, Amazon Redshift, and A... by Amazon 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...
Amazon Web Services12.6K views
Containerize Your Game Server for the Best Multiplayer Experience by Docker, Inc.
Containerize Your Game Server for the Best Multiplayer Experience Containerize Your Game Server for the Best Multiplayer Experience
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.5.4K views
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level... by MongoDB
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
MongoDB262 views
DevCon Summit 2014 #DevelopersUnitePH: Klab Cyscorpions by DEVCON
DevCon Summit 2014 #DevelopersUnitePH: Klab CyscorpionsDevCon Summit 2014 #DevelopersUnitePH: Klab Cyscorpions
DevCon Summit 2014 #DevelopersUnitePH: Klab Cyscorpions
DEVCON 653 views
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로 by Amazon Web Services Korea
AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로AWS Summit Seoul 2015 -  일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로
AWS Summit Seoul 2015 - 일본 AWS 게임 고객사례 - Gungho, Grani, Nintendo를 중심으로

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn... by
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
26.5K views46 slides
Big Data per le Startup: come creare applicazioni Big Data in modalità Server... by
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
5.6K views44 slides
Esegui pod serverless con Amazon EKS e AWS Fargate by
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
4.1K views62 slides
Costruire Applicazioni Moderne con AWS by
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
2.8K views61 slides
Come spendere fino al 90% in meno con i container e le istanze spot by
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
1.8K views21 slides
Open banking as a service by
Open banking as a serviceOpen banking as a service
Open banking as a serviceAmazon Web Services
7.1K views14 slides

More from Amazon Web Services(20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn... by Amazon Web Services
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services26.5K views
Big Data per le Startup: come creare applicazioni Big Data in modalità Server... by Amazon Web Services
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services5.6K views
Esegui pod serverless con Amazon EKS e AWS Fargate by Amazon Web Services
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services4.1K views
Come spendere fino al 90% in meno con i container e le istanze spot by Amazon Web Services
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services1.8K views
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea... by Amazon Web Services
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services3.3K views
OpsWorks Configuration Management: automatizza la gestione e i deployment del... by Amazon Web Services
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services2.6K views
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads by Amazon Web Services
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services1.7K views
Database Oracle e VMware Cloud on AWS i miti da sfatare by Amazon Web Services
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services1.3K views
Crea la tua prima serverless ledger-based app con QLDB e NodeJS by Amazon Web Services
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services1.9K views
API moderne real-time per applicazioni mobili e web by Amazon Web Services
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services1.5K views
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare by Amazon Web Services
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services1.5K views
AWS_HK_StartupDay_Building Interactive websites while automating for efficien... by Amazon Web Services
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Introduzione a Amazon Elastic Container Service by Amazon Web Services
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services2.7K views

Recently uploaded

The Importance of Cybersecurity for Digital Transformation by
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital TransformationNUS-ISS
27 views26 slides
handbook for web 3 adoption.pdf by
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdfLiveplex
19 views16 slides
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum... by
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...NUS-ISS
34 views35 slides
Future of Learning - Khoong Chan Meng by
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan MengNUS-ISS
33 views7 slides
Melek BEN MAHMOUD.pdf by
Melek BEN MAHMOUD.pdfMelek BEN MAHMOUD.pdf
Melek BEN MAHMOUD.pdfMelekBenMahmoud
14 views1 slide
Voice Logger - Telephony Integration Solution at Aegis by
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at AegisNirmal Sharma
17 views1 slide

Recently uploaded(20)

The Importance of Cybersecurity for Digital Transformation by NUS-ISS
The Importance of Cybersecurity for Digital TransformationThe Importance of Cybersecurity for Digital Transformation
The Importance of Cybersecurity for Digital Transformation
NUS-ISS27 views
handbook for web 3 adoption.pdf by Liveplex
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdf
Liveplex19 views
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum... by NUS-ISS
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
NUS-ISS34 views
Future of Learning - Khoong Chan Meng by NUS-ISS
Future of Learning - Khoong Chan MengFuture of Learning - Khoong Chan Meng
Future of Learning - Khoong Chan Meng
NUS-ISS33 views
Voice Logger - Telephony Integration Solution at Aegis by Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma17 views
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze by NUS-ISS
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng TszeDigital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
Digital Product-Centric Enterprise and Enterprise Architecture - Tan Eng Tsze
NUS-ISS19 views
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by Vadym Kazulkin
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
Vadym Kazulkin75 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi120 views
DALI Basics Course 2023 by Ivory Egg
DALI Basics Course  2023DALI Basics Course  2023
DALI Basics Course 2023
Ivory Egg14 views
Understanding GenAI/LLM and What is Google Offering - Felix Goh by NUS-ISS
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
NUS-ISS41 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica... by NUS-ISS
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
NUS-ISS16 views
Combining Orchestration and Choreography for a Clean Architecture by ThomasHeinrichs1
Combining Orchestration and Choreography for a Clean ArchitectureCombining Orchestration and Choreography for a Clean Architecture
Combining Orchestration and Choreography for a Clean Architecture
ThomasHeinrichs169 views
Future of Learning - Yap Aye Wee.pdf by NUS-ISS
Future of Learning - Yap Aye Wee.pdfFuture of Learning - Yap Aye Wee.pdf
Future of Learning - Yap Aye Wee.pdf
NUS-ISS41 views
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri15 views

Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Invent 2013

  • 1. Building a World in the Clouds MMO Architecture on AWS Jeffrey Berube Director of Technical Operations Red 5 Studios, Inc. November 15, 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. Overview • • • • • What is Firefall? Why build in the cloud? Infrastructure Goals Evolution of the Platform Tools for Success
  • 4. • Free-to-play cooperative open world shooter • “Shardless” world • Instance-based maps • Both persistent and transient map types • Possible for many instances of a map to exist at the same time
  • 5. • Free-to-play cooperative open world shooter • “Shardless” world • Instance-based maps • Both persistent and transient map types • Possible for many instances of a map to exist at the same time
  • 6. • Free-to-play cooperative open world shooter • “Shardless” world • Instance-based maps • Both persistent and transient map types • Possible for many instances of a map to exist at the same time
  • 8. Why build in the cloud? • Players are unpredictable • Developers are unpredictable • Cyclical player behavior opens up opportunities for significant cost savings
  • 9. Why build in the cloud? • Players are unpredictable – Forecasts can be (and usually are) wrong • Too little hardware, Too many players – Bad for everyone • Too much hardware, Too few players – Good for players (sort of) but bad for the business – What if they don’t stick around? • Developers are unpredictable • Cyclical player behavior opens up opportunities for significant cost savings
  • 10. Why build in the cloud? • Players are unpredictable • Developers are unpredictable • Cyclical player behavior opens up opportunities for significant cost savings
  • 11. Why build in the cloud? • Players are unpredictable • Developers are unpredictable – Active development has risks • Performance can change drastically • New services can “appear” the day of the patch – MMOs are ALWAYS being actively developed! • (If you want to be successful…) • Cyclical player behavior opens up opportunities for significant cost savings
  • 12. Why build in the cloud? • Players are unpredictable • Developers are unpredictable • Cyclical player behavior opens up opportunities for significant cost savings
  • 14. Player Graph with Server Overlay
  • 15. Player Graph with Efficient Server Overlay 35%–37.5% Savings
  • 17. Infrastructure Goals Deployment and Recovery Platform How do we make site management better? How can the platform make the player experience better? • • • • Expansion Scalability Disaster Recovery Self-Healing • Downtime • Player Mobility
  • 19. Deployment and Recovery Goals • • • • Quick regional expansion On-demand scalability Disaster recovery with minimal downtime Self-healing
  • 20. Deployment and Recovery Goals • Quick regional expansion – Traditionally, expansion is a multi-month process • Contracts, Purchase and Shipping, Installation, etc. – Today, adding a region is about a week long task • Additional improvements are in the works • On-demand scalability • Disaster recovery with minimal downtime • Self-healing
  • 21. Deployment and Recovery Goals • • • • Quick regional expansion On-demand scalability Disaster recovery with minimal downtime Self-healing
  • 22. Deployment and Recovery Goals • Quick regional expansion • On-demand scalability – Automated scale up and down without* limits • Instance sizes desired may not always be available, however • Disaster recovery with minimal downtime • Self-healing
  • 23. Deployment and Recovery Goals • • • • Quick regional expansion On-demand scalability Disaster recovery with minimal downtime Self-healing
  • 24. Deployment and Recovery Goals • Quick regional expansion • On-demand scalability • Disaster recovery with minimal downtime – Traditionally, DR sites are expensive and are not always properly maintained – Our goal is to automate disaster recovery safely • We do a lot manually at present • Self-healing
  • 25. Deployment and Recovery Goals • • • • Quick regional expansion On-demand scalability Disaster recovery with minimal downtime Self-healing
  • 27. Platform Goals • Zero downtime game updates • Players can play globally without restrictions
  • 28. Platform Goals • Zero downtime game updates – Blue-Green deployment – Doesn’t preclude scheduled maintenance • Some things are more safely done offline • Players can play globally without restrictions
  • 29. Platform Goals • Zero downtime game updates • Players can play globally without restrictions
  • 30. Platform Goals • Zero downtime game updates • Players can play globally without restrictions – Characters won’t be held hostage • Player data is available everywhere they want to be • We don’t charge a player so that they can play with their friends – Prefer closest healthy region, however
  • 31. Evolution of the Platform
  • 33. INET The Beginning March 2011 AWS Services in Use Outside-Game AWS Elastic Compute Cloud (EC2) US-West-1 CORP Availability Zone: b
  • 35. INET Operator Alpha October 2011 AWS ELB AWS Services in Use Mx HP Outside-Game HP PvP HP MM HP HP Inside-LB Chef Ic I I C Ar Inside-Core Log U Ad Inside-App C U Ad Inside-DB Availability Zone: b US-West-1 CORP HP Outside-LB Inside-Game AWS MD MCP Elastic Compute Cloud (EC2) Simple Storage Service (S3) Elastic Load Balancing (ELB) Simple Queue Service (SQS)
  • 37. INET Closed Beta April 2012 Operator AWS ELB AWS Services in Use OW PvP HP HP Outside-Game Outside-Game MM Outside-LB HP HP Inside-LB HP Inside-Game Outside-LB MD MM HP HP Inside-LB MCP Inside-Game HP HP HP Chef I Ic Gr Inside-Core Log C U I C U Ar Ad S Ar Ad S Inside-App Availability Zone: b AWS RDS Inside-App Availability Zone: c Elastic Compute Cloud (EC2) Simple Storage Service (S3) Elastic Load Balancing (ELB) Simple Queue Service (SQS) Relational Database Service (RDS) ElastiCache AWS PvP HP US-West-1 CORP OW HP
  • 39. INET Operator Gamescom August 2012 AWS ELB AWS Services in Use OW NPE PvE EU-West-1 PvP HP HP HP Outside-Game Task Task Task MD MM Inside-Game Log Ic C U Ar L In Ad Co S A P W I Chef C U A P Gr Log Ic Outside-LB I Inside-AppTasks Chef AWS ELB Gr Inside-Core VPC Inside-Core AWS MCP Inside-App W Inside-DB Availability Zone: b US-West-2 CORP US-East-1 US-West-2 Elastic Compute Cloud (EC2) Simple Storage Service (S3) Elastic Load Balancing (ELB) Simple Queue Service (SQS) Relational Database Service (RDS) ElastiCache CloudFront Virtual Private Cloud (VPC) HQ
  • 41. INET Operator Open Beta July 2013 AWS ELB AWS Services in Use ES ES ES OW NPE PvE EU-West-1 PvP HP MCP MD MM HP HP Inside-LB Log Ic C U Ar L In Ad Co S A P W C U A P Gr Log Gr Inside-Core Inside-Core VPC US-East-1 Ops US-East-1 Outside-LB I Chef VPC HP I Inside-AppTasks Ic HP Inside-Game Task Task Task Chef HP Outside-Game Inside-Search AWS ES ES Inside-App W Inside-DB Availability Zone: b US-West-2 CORP ES HQ Elastic Compute Cloud (EC2) Simple Storage Service (S3) Elastic Load Balancing (ELB) Simple Queue Service (SQS) CloudFront Virtual Private Cloud (VPC) Elastic MapReduce (EMR)
  • 43. INET Operator Today November 2013 AWS ELB AWS Services in Use ES ES ES ES ES ES OW NPE PvE EU-West-1 PvP HP Outside-Game MD MM Chef Log Ic Ic Inside-LB C U Ar L In Ad Co S A P W Gr Log Gr VPC Inside-Core VPC US-East-1 Ops AP-NorthEast-1 Inside-App C Inside-Core US-East-1 Outside-LB I Inside-AppTasks Chef HP Inside-Game AWS MCP Task Task Task A P Inside-DB Availability Zone: b US-West-2 SA-East-1 CORP Inside-Search HQ Elastic Compute Cloud (EC2) Simple Storage Service (S3) Elastic Load Balancing (ELB) Simple Queue Service (SQS) CloudFront Virtual Private Cloud (VPC) Elastic MapReduce (EMR)
  • 45. Third-party Tools • • • • • • • • • Opscode Chef collectd Icinga (Nagios) Graphite Graylog2 HAProxy Keepalived elasticsearch Others (Bluepill, Thin, memcached, RabbitMQ, etc.)
  • 46. Third-party Services • Dyn – Global Load Balancing – DNS Failover • PagerDuty – On-call scheduling – Phone calls! • Pingdom – Transaction monitoring • Duo Security
  • 47. Internal Tools • Architect • Cartographer • Dashboards (Everywhere)
  • 48. Internal Tools • Architect – Everything heartbeats – Service-specific data aggregation • Cartographer • Dashboards (Everywhere)
  • 49. Internal Tools • Architect • Cartographer • Dashboards (Everywhere)
  • 50. Internal Tools • Architect • Cartographer – Builds new game server stacks – Replaces failed game server components – Scales up (or down) the servers within a pool depending on player demand • Dashboards (Everywhere)
  • 51. Internal Tools • Architect • Cartographer • Dashboards (Everywhere)
  • 52. Internal Tools • Architect • Cartographer • Dashboards (Everywhere) – Multiple data sources • Graphite • Production databases • Business Intelligence databases
  • 53. Please give us your feedback on this presentation MBL304 As a thank you, we will select prize winners daily for completed surveys!