of 32
8/6/2019 Joyent Scale in the Cloud GT
1/32
8/6/2019 Joyent Scale in the Cloud GT
2/32
8/6/2019 Joyent Scale in the Cloud GT
3/32
8/6/2019 Joyent Scale in the Cloud GT
4/32
James Cann
Scaling acloudbased
Game Infrastructure
8/6/2019 Joyent Scale in the Cloud GT
5/32
Build a game!
8/6/2019 Joyent Scale in the Cloud GT
6/32
Will it fly?
8/6/2019 Joyent Scale in the Cloud GT
7/32
Build a database!
8/6/2019 Joyent Scale in the Cloud GT
8/32
Will it float?
8/6/2019 Joyent Scale in the Cloud GT
9/32
Get some servers!
8/6/2019 Joyent Scale in the Cloud GT
10/32
DIY Server Farm
hardware
softwareoperating system
raid memoryredundancy
scalability
read-write performance
database
load-balancerbackups
Dantes Inferno!
8/6/2019 Joyent Scale in the Cloud GT
11/32
Will it scale?
8/6/2019 Joyent Scale in the Cloud GT
12/32
Will it fly?Will it float?Will it scale?These questions seem identical to most people
8/6/2019 Joyent Scale in the Cloud GT
13/32
Scalinggames != website
traffic"
8/6/2019 Joyent Scale in the Cloud GT
14/32
Scaling yourgame means launching
today and possiblysupporting 100,000 users."
tomorrow..."
8/6/2019 Joyent Scale in the Cloud GT
15/32
The CloudCloud computing is Internet-based computing,whereby shared servers provide resources, software,and data to computers and other devices on demand,as with the electricity grid. ""Cloud computing is a natural evolution of thewidespread adoption of virtualization, service-orientedarchitecture and utility computing. Details areabstracted from consumers, who no longer have needfor expertise in, or control over, the technologyinfrastructure "in the cloud" that supports them.[1]""Danielson, Krissi (2008-03-26). "Distinguishing Cloud Computing from Utility Computing"""
8/6/2019 Joyent Scale in the Cloud GT
16/32
The CloudWhat cloud computing vs. dedicatedserver rental meant to us:"""Commoditized-hardware"Big-iron performance at dedicated server prices"Hardware expertise"Server technology expertise"Reliability and up-time"Rapid resource allocation"Conserve in-house attention"
8/6/2019 Joyent Scale in the Cloud GT
17/32
Beyond web 2.0"Games are web 3.0 (maybe web 4.0)Critical masses of users accessing read-write
resources with always-on devicesGaming traffic patterns and data consumption
is burst-able, chatty, and highly unpredictable in
early stagesRegardless of theoretical measurements thatcan be made, a small team of 3 people have
more important things to do
8/6/2019 Joyent Scale in the Cloud GT
18/32
Its not a yes or no question"it's an economics question:"
Will it scale? Yes, no, maybe
Hardware / SoftwareWetware*System Expectations
*you and me and the database guru"
8/6/2019 Joyent Scale in the Cloud GT
19/32
The CloudContextualizing scalability in the cloud when we framethis as an ROI analysis:"""Commoditized-hardware"Big-iron performance at dedicated server prices"Hardware expertise"Server technology expertise"Reliability and up-time"Rapid resource allocation"Conserve in-house attention"We get high-performance, high-availability, high-concurrency, dedicated expertise to accommodate moretraffic for less money."""
8/6/2019 Joyent Scale in the Cloud GT
20/32
Hardware / Software"
8/6/2019 Joyent Scale in the Cloud GT
21/32
Hardware / Software"
daily active users = vertical"concurrent users = horizontal
"
The good news is there are early beacons:"1)Daily active users"2)Concurrent users"
vertical = bigger (more cpu, memory)"horizontal = more (more db, app nodes)"
8/6/2019 Joyent Scale in the Cloud GT
22/32
8/6/2019 Joyent Scale in the Cloud GT
23/32
8/6/2019 Joyent Scale in the Cloud GT
24/32
Analysis"Hardware:"Disk I/O"CPU graphs"Bandwidth""Software:"NewRelic
"dTrace"
8/6/2019 Joyent Scale in the Cloud GT
25/32
Ultimately, the databasewill become the problem"
8/6/2019 Joyent Scale in the Cloud GT
26/32
Scaling the database
Reads-writes (reads are easy!)
8/6/2019 Joyent Scale in the Cloud GT
27/32
Scaling the database
Reads-writes (writes are @#$% hard!) Sharding Master-master NoSQL (Cassandra, Riak)
8/6/2019 Joyent Scale in the Cloud GT
28/32
Scaling the database
Sharding
8/6/2019 Joyent Scale in the Cloud GT
29/32
Scaling the database
Master-master
8/6/2019 Joyent Scale in the Cloud GT
30/32
Scaling the database
NoSQL (Riak)
8/6/2019 Joyent Scale in the Cloud GT
31/32
2011 Technology Trends:"NoSQL"Stack optimizations: Rails = Rack, Metal
"Server-side Javascript (Node.js)"Cloud services (load balancers, security, db)"
8/6/2019 Joyent Scale in the Cloud GT
32/32
Thank YouWebinar recording and slides will be available at
joyent.com/resources/webinars on 1/12www.joyent.com
Special thanks to Sean Johnson for server graphics