Live data from Hacker News

Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

techcrunch.com

21–30 of 53 posts

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#21
post #8

Here's how this adds up to me: - 215M users. - Up to 1000 servers per week. - Say, they've been doing this for 30 weeks. - So they need 1 server for every 7167 users? Is this normal for mmorpg type games? - Are 215M people playing around the clock? I'm just a little baffled by this number.

7000 users/server is actually pretty high for an MMO, though I don't know how Zynga's MMOs compare to something like World of Warcraft in terms of server resources needed. The numbers being floated around for World of Warcraft are around 75,000 cores for 10m subscribers, or about 133 subscribers per core. Obviously those aren't single-core servers, but it's still under 1k per server. Of course this and the Zynga numb…

Just to emphasize your point in the last paragraph: comparing the game mechanics in Zynga games to those in traditional MMOs is laughable.

Zynga games are more comparable to social websites than WoW.

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#23
post #6

This makes me feel a little better. We created a multi-player rpg for mobile phones at startup weekend a few year ago. It actually did ok and it was growing pretty quickly. I hosted it on AppEngine to start and the resources just started going sky high. Players were initiating an attack at least once per second (not to mention all of the other server calls like messaging, weapon purchasing, scanning to see who is in…

That'd be great if you could elaborate a bit on how appengine wasn't fit or too expensive for your use case? Was performance an issue, or just costs? Thanks.

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#24
post #3

1000 new servers a week is a ridiculous number for this sort of company. Their code must be really, really bad. Anyone who works there care to chime in? Is it all written in ColdFusion or something?

Downvoted for not thinking through the numbers.

When Zynga launches a new game, they can get over 1M new DAILY players on that game within the first week. [1]

For their games, it seems that 7% of daily players are online at any given time. [2]

So within the first week of launch, you have, about 100,000 people playing, simultaneously.

Let's say the client is sending 5 requests per second to the game server. And let's say that this week, all 1000 servers went to the new game.

Now, of course that's just an AVERAGE across the day. In reality, there will be a cresting factor, like any distributed system, and sometimes the load will spike, say, 8x.

Is it ridiculous for a single server to process 500 requests per second on average and 4000 requests per second peak? That seems pretty standard by my book.

[1] http://techcrunch.com/2010/06/14/pincus-frontierville/ [2] http://techcrunch.com/2010/08/17/zynga-launches-first-locali...

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#25
post #18
post #13

1000 servers per week number is not just realistic. I will like to believe the author misspoke otherwise it will take more that Zynga employees just to configure 1000 servers in a week time.

1000 servers is not at all unrealistic if you've automated the process.

It's likely fully automated since it's running on EC2

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#26
post #24
post #3

1000 new servers a week is a ridiculous number for this sort of company. Their code must be really, really bad. Anyone who works there care to chime in? Is it all written in ColdFusion or something?

Downvoted for not thinking through the numbers. When Zynga launches a new game, they can get over 1M new DAILY players on that game within the first week. [1] For their games, it seems that 7% of daily players are online at any given time. [2] So within the first week of launch, you have, about 100,000 people playing, simultaneously. Let's say the client is sending 5 requests per second to the game server. And let's…

An average of 5 requests per second from a casual game's client is a sign of a poor design. Realistically you very close to 1 user action = 1 request. Now, a top tier starcraft micromanager may average pull 300 actions per (ed: minute), but an average user should be somewhere around 1 action per second to 6 actions a minute.

PS: The key to pulling this off is running the same simulation on the client using the same random seed. User clicks attack blob with fork. > Client says: attacked blob at (timestamp, with fork) > Server says: blob took X damage at (timestamp) random seed at (value) > Client shows: A long string of actions that adds up to that value and or requests a new game state if something does not add up.

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#27
That doesn't suprise me, I was running a network for 150 computers while in college and one of the computers was always doing a crazy amount of download and upload (order of gigabyte a day). Our IDS flagged it and I started investigating what was going on. I finally figured out that the users was using a flash game site. I couldn't believe a darn stupid game could cause that much traffic but we asked the person to stop for a day and it was exactly that.

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#28
post #26
post #24

Earlier quoted context omitted.

Downvoted for not thinking through the numbers. When Zynga launches a new game, they can get over 1M new DAILY players on that game within the first week. [1] For their games, it seems that 7% of daily players are online at any given time. [2] So within the first week of launch, you have, about 100,000 people playing, simultaneously. Let's say the client is sending 5 requests per second to the game server. And let's…

An average of 5 requests per second from a casual game's client is a sign of a poor design. Realistically you very close to 1 user action = 1 request. Now, a top tier starcraft micromanager may average pull 300 actions per (ed: minute), but an average user should be somewhere around 1 action per second to 6 actions a minute. PS: The key to pulling this off is running the same simulation on the client using the same r…

> 300 actions per second

You mean per minute, right? Either that or I'm way worse at SCII than I thought.

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#29
post #13

1000 servers per week number is not just realistic. I will like to believe the author misspoke otherwise it will take more that Zynga employees just to configure 1000 servers in a week time.

Umm... With EC2, which is what they often use, powering up and configuring 1000 machines can take 10 minutes or so, give or take a ramped boot. :-)

Re: Zynga Moves 1 Petabyte Of Data Daily; Adds 1,000 Servers A Week

#30
post #24
post #3

1000 new servers a week is a ridiculous number for this sort of company. Their code must be really, really bad. Anyone who works there care to chime in? Is it all written in ColdFusion or something?

Downvoted for not thinking through the numbers. When Zynga launches a new game, they can get over 1M new DAILY players on that game within the first week. [1] For their games, it seems that 7% of daily players are online at any given time. [2] So within the first week of launch, you have, about 100,000 people playing, simultaneously. Let's say the client is sending 5 requests per second to the game server. And let's…

100'000 people playing simultaneously adds up to say about 10'000 requests per second. Farmville-like games are not exactly rocket science - most of those requests should be processed sub-50ms total cpu-actual-usage time. that's 200 requests/s per server. Which adds up to 50 servers. Let's double that to account for db load too, and we're still an order of magnitude away from 1000 servers.
Post reply on HN