Looking Inside the Second Life Data Centers
An anonymous reader writes "InformationWeek looks inside the data centers that power the game Second Life. Tidbits from the article: The software architecture is an extension of the virtual world metaphor of Second Life. At any time, it's possible to walk into one of Second Life's two data centers, pat one of the rack-mounted servers, and say that particular server is running virtual New York, or San Francisco, or ancient Rome, and imagine itty-bitty people and buildings inside the 1U rack-mounted servers.
Linden Lab, which develops and maintains Second Life, runs 2,000 Intel- and AMD-based servers in two co-location facilities in San Francisco and Dallas. And, contrary to widespread belief among Second Life users, Linden Lab has not decided whether to open-source the Second Life server software."
"Linden Lab has not decided whether to open-source the Second Life server software."
I dont think it matters too much, the opensim project has been making amazing strides using the BSD licensed libsecondlife code as a base. http://openmetaverse.org/wiki/OpenSim
#!/bin/csh cat $0
Second Life isn't a game, it's an advertising medium. Nothing more.
-----
PGP Key ID 0xCB8FF658
It works, up to a point but it is extremely limited.
If you read the article you will have noted that an area in the game is run on a single processor. That makes it fairly simple to grow, more areas == more servers.
But it is a bit like handling multi-tasking on your PC by adding more cores for every task. Run your OS, 1 cure, run a music player another core, run a game, another core, run a virus scanner, another core.
This is NOT the way things are done and for three reasons.
First it is wastefull, an empty area (no players) would still be using a full processor, granted probably a light one but it would be like having one Pentium4 cpu dedicated to running your mp3 player, even the cheapest available is going to be overkill.
Second it is limited, you can only use 1 cpu and they are still limited in how fast you can go, worse each speed increase is going to cost you more and more. So an area with lots of visitors will be unable to scale.
Last is that areas are seperated, you have to move from cpu to cpu as you move areas, this means transferring a lot of data even if you go from one desolate area to another.
Imagine if an ISP had every website on a single CPU box and that is the only option. Wastefull for small sites, not powerfull enough for large sites and a nightmare to administrate.
So why did they do it?
Well, it is relativly simple to setup. You don't need loadbalancing for instance or dynamic scaling. Customer simply buys a server space from you and that is the their server. It should in theory also be fairly robust, one cpu/server crashing won't really affect all the others. In a cluster setup one bit going down CAN (doesn't have to but it seems like it in MMORPG terms) take everything with it.
it is also cheap, they can use stock hardware buyable from any cheap box maker. Blizzard and Sony had to cough up some serious cash long before they could even open their game to get their servers running.
It is the reason why today the majority of hosting providers still work with crappy intel/amd boxes and not virtual servers on proper sun/ibm or some such hardware. It is cheap and you can get started with just one desktop PC (I seen server farms that had racks specially designed to house desktops, not racks).
More traditional setups for MMO's are to have clusters, each cluster is made up of a combination of hardware setup to serve a particular area. The advantage here is that you can more easily upgrade a cluster to handle a bigger load from an area. There are limits but more or less you can simply plug in more hardware to handle a high load. Offcourse such hardware is going to cost you.
The software for it is more complex to build and in all it is just more costly BUT in the long run more flexible.
Linden Labs had (still doesn't) have anywhere near the resources of a SOE or Blizzard. Their system worked for them but by now they are feeling the pinch as some areas just can't handle the load.
Their advantage is that customers themselves pay for the servers directly, so anyone with an underused area is wasting their own money, not Linden Labs. Same as when you buy a dedicated super server to serve you knitting club photo's. Your money your waste.
By the way, the above is based on an extremely old in depth article, it could well be that nowadays a sim (area) can use more then 1 cpu, but back in the day it couldn't
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Am I the only one that reads these titles that say "A peak inside X's datacenter" and go "OMG Datacenter pics!!!!!!"? Only to be disappointed by a text article with no pics? I DEMAND MY SERVER PR0N!
Can all fish swim?