Вы находитесь на странице: 1из 32

Scaling a cloud based!

Game Infrastructure
James Cann
Build a game!
Will it fly?
Build a database!
Will it float?
Get some servers!



DIY Server Farm

operating system



read-write performance

Dante s Inferno!


Will it scale?
• Will it fly?
• Will it float?
• Will it scale?
These questions seem identical to most people


games != website
Scaling your 

game means launching
today and possibly
supporting 100,000 users."
The Cloud
Cloud 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 the
widespread adoption of virtualization, service-oriented
architecture and utility computing. Details are
abstracted from consumers, who no longer have need
for expertise in, or control over, the technology
infrastructure "in the cloud" that supports them.[1]"
Danielson, Krissi (2008-03-26). "Distinguishing Cloud Computing from Utility Computing""

The Cloud
What cloud computing vs. dedicated
server 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"
Beyond web 2.0"
•  Games are web 3.0 (maybe web 4.0)

•  Critical masses of users accessing read-write
resources with always-on devices

•  Gaming traffic patterns and data consumption
is burst-able, chatty, and highly unpredictable in
early stages

•  Regardless of theoretical measurements that
can be made, a small team of 3 people have
more important things to do

Will it scale? Yes, no, maybe

It s not a yes or no question"

it's an economics question:"
•  Hardware / Software
•  Wetware*
•  System Expectations
*you and me and the database guru"
The Cloud
Contextualizing scalability in the cloud when we frame
this 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 more
traffic for less money."
Hardware / Software"
Hardware / Software"
The good news is there are early beacons:"
1) Daily active users"
2) Concurrent users"

daily active users = vertical"

concurrent users = horizontal"
vertical = bigger (more cpu, memory)"
horizontal = more (more db, app nodes)"
Disk I/O"
CPU graphs"
Ultimately, the database
will become the problem"
Scaling the database
•  Reads-writes (reads are easy!)
Scaling the database
•  Reads-writes (writes are @#$% hard!)
‣  Sharding
‣  Master-master
‣  NoSQL (Cassandra, Riak)
Scaling the database
•  Sharding
Scaling the database
•  Master-master
Scaling the database
• NoSQL (Riak)
2011 Technology Trends:"
• NoSQL"
• Stack optimizations: Rails = Rack, Metal"
• Server-side Javascript (Node.js)"
• Cloud services (load balancers, security, db)"
Thank You

Webinar recording and slides will be available at

joyent.com/resources/webinars on 1/12


Special thanks to Sean Johnson for server graphics