Forgot your password?
typodupeerror

Second Life Looks At Scaling Problems 68

Posted by Zonk
from the build-a-better-moustrap-etc dept.
News.com reports that Second Life is looking down the barrel of some major scaling problems as the virtual world's popularity soars. While Linden Labs itself seems confident in the scalabilty of their virtuality, outsiders aren't so sure. From the article: "'My understanding of (Linden Lab's) back-end requirements are that they're absurd and unsustainable,' said Daniel James, CEO of Three Rings, publisher of the online game Puzzle Pirates. 'They have (about) as many peak simultaneous players as we do, and we're doing it on four CPUs.'"
This discussion has been archived. No new comments can be posted.

Second Life Looks At Scaling Problems

Comments Filter:
  • by grub (11606)

    FTA: Each server is responsible for an individual "sim," or 16 acres of virtual "Second Life" land. At peak usage that means that each server is handling about three users."

    That sounds like a point of failure. What would happen if a large group of mischievous users organize and decide to visit the same 16 acres of land simultaneously?

    • by Anonymous Coward
      Each server supports 16 acres of virtual territory. Now they need to emulate the server itself in the game world. Each acre of virtual territory can hold 100,000 virtual servers for a total of 1,600,000 servers.

      Clearly, emulation is the answer.
    • a large group of mischievous users would get disconnected because there server reset.

      In warcraft, attacks on major cities have been known to bring the server down.

      Does second life seperate its users? In warcraft, the player base is seperated across realms that dont interact with each other. When a realm goes down, other are not affected. (except a server will host a few realms, so a server can affect a few realms but not everyone). but its the entire realm that suffers. you have no exscape.

      It looks like
    • If you read the article, it's clear that each server isn't limited to three users: it means that the system is such that the number of peak users divided by the number of servers is 3. I'm sure that they have more than three users in a given 16-acre area at any given time. (16 acres is fairly large, actually).
    • I doubt it's a point of failure.

      Their "3 players per server" was thrown out as a contrast to every other online game that has hundreds~thousands of users per server.

      The question: If your user population explodes, how are you going to afford all the servers necessary to keep such a low player:server ratio?

      The answer: Our servers are cheap and quickly/easily deployed. Don't worry about it, we're fine.

      And Linden Lab claims they'll be profitable soon.
    • by Anonymous Coward on Tuesday June 06, 2006 @01:35PM (#15481284)
      That sounds like a point of failure. What would happen if a large group of mischievous users organize and decide to visit the same 16 acres of land simultaneously?

      Never mind mischevious users. A more important question is this:

      What would happen a large group of normal users decide to visit the same 16 acres of land for reasons having nothing to do with mischief or organization?

      As it happens, we see the answer to this question every single night. For example, there's somewhere in the world that's like the linden town square or something. It's your default "warp home" point after you first sign up for an account. This invariably has maybe ten to a hundred people in the area. You ask, what if a large group of people decide to all warp here at once--? Well, since it's the default warp point, they invariably will--?

      And the answer to the question is "the game becomes unusably slow for anyone foolish enough to have entered this area". The way Linden Labs is dealing with this? They, uh. They split the town square area into four chunks such that the very center of the square rests directly on the boundary of four different acre servers. Which helps the slowdown there a little, but what about other situations where a large group of non-mischevious users may decide for totally natural reasons to all go to the same place at the same time-- say because there is an event or a party? This is a social game. The entire point of the game is to accumulate many players in one place at a time.

      And as it stands, the [non]scalability is the game's worst problem. You basically never get even remotely acceptable framerates unless you're standing in one of the sandboxes by yourself or with maybe one other person.
      • Theoretically, ech server has a set limit of users (users who try and cross into a full server get bounced from that sim). In practice (at least a year or two ago when I used to "play" SL) the server often will just begin acting flaky, then crash and reboot.

        -Eric

    • by Anonymous Coward
      You're misunderstanding. It's not that the server can only *handle* 3 users, its' that the average user-load of their servers is 3 users. The busy areas will have *many* more, and the empty areas will have none. I'll agree with the comments at the story about this being a *wonderful* environment for virtualization to allow multiple low-user areas to 'idle' on the same single piece of hardware.
      • The problem is that virtualization is a resource hog. If one of the empty areas suddenly had an influx, they'd need some way to move it to a normal server, or it wouldn't be able to handle many people.
    • SL can easily take more than 3 users per sim(server), it just averages out to that because there are so many sims in the SL world.

      That's not to say that it doesn't have problems. More than a bunch of people standing around, the bigger problems come with complex scripted objects dragging down the sim. You may only have 6 people on that particular server, but there still easily be 4000 scripts running in all the different objects laying around.

      Not to mention that the clientside stuff can get pretty bad too. S
  • by tdvaughan (582870) on Tuesday June 06, 2006 @01:14PM (#15481098) Homepage
    "They're succeeding because of their radically different approach to this business," said Edward Castronova, an expert on virtual worlds and the world's greatest sterile lover.
    • Castrati (singers who were castrated before puberty, allowing them to keep their high range) actually used to be great favorites of the women for some odd reason. One let his brother take advantage of this by leaving them in a seduceable state for him.
  • by jbellis (142590) <jonathan@carnage ... r.com minus city> on Tuesday June 06, 2006 @01:20PM (#15481142) Homepage

    [uses] an unusual configuration that dedicates each server to a sliver of virtual real estate


    Er, no, that's not really very unusual at all, for MMOs, and dates way, way back. (Well, as much as anything in MMOs goes "way back...")

    It has a number of advantages and disadvantages over other architectures; it's generally thought to be more complex in terms of synchronization w/ "neighboring" servers, for instance, but this isn't something that would make someone who knows what he's doing go "WTF?" It certainly doesn't have inherent scaling problems.


    (x86 is the processor architecture used by most AMD and Intel chips)


    I think this is representative of the author's tech clue.

    --
    Carnage Blender [carnageblender.com]: Meet interesting people. Kill them.
    • I've always wondered if it would be possible to have something like Second Life distributed in such a way that is similar to the web and instant messaging. You direct connect to your friends to share your game state, and you download areas (levels?) from webservers. It would make the people who built levels only have to have a web host (maybe php/cgi enabled) and that be it.

      Of course, there wouldn't be the traditional money involved, but that didn't stop other web projects.
      • Many people have often tried to hack web stuff into doing shared 3D. For example, the Open Source Metaverse Project [sf.net] uses an SQL database to store stuff and web servers to serve it.

        It really doesn't make a ton of sense once you start trying to do it, other than the fact that web technology is already deployed. Just getting the initial data to people is not hard. Its how to implement changes, interaction, etc.

        SL is build both technically and socially on the idea of real estate. The scalability of that

      • I would love to see something like a distributed 2nd life.. sl:// or something.
  • "Last March, Cory Ondrejka, the chief technology officer at "Second Life" publisher Linden Lab, bet a symbolic quarter that his virtual world would within two years have more users than the wildly popular online game "World of Warcraft." ... The bet was certainly ambitious."

    That's quite the bet there, speedy. Is it at least a real quarter that symbolizes a real bet or is it actually just a symbol of a quarter? Aaand, who gets the quarter?
    • Second Life isn't getting close, and they're giving away accounts. The only way this will come true is if WoW somehow sheds enough players (e.g. by being replaced by WoW2 or something).

      I think there's enormous potential for something like Second Life (essentially consider an http replacement/extension that treats "web pages" as locations and allows you to interact with other people in those locations -- 2d/3d doesn't matter), but Second Life isn't it.
    • Actually, it was shorthand for "the revenue SL takes in in a quarter"
  • by wbren (682133) on Tuesday June 06, 2006 @01:25PM (#15481183) Homepage
    They have (about) as many peak simultaneous players as we do, and we're doing it on four CPUs.
    With all due respect to Daniel James, Second Life is much more complex than Puzzle Pirates. The peak usage numbers aren't the only factor in scalability.
    • And that's the point. Puzzle Pirates could support a vastly larger player population with relatively simple hardware upgrades. It is not entirely certain whether or not it is possible for Second Life to support a vastly larger player population without a complete redesign.

      Something is said to be scalable if it is relatively simple to make it able to handle larger loads. By all of the available evidence, Second Life does not seem to be very scalable.
      • Puzzle Pirates doesn't let their users create custom content and then let them script it.

        A lot of the content in SL is scripted. I've even seen scripted shoes and scripted hair. Most servers have hundreds of scripts running, some thousands. As you might imagine, those scripts consume a lot of resources, along with all the other things the servers have to manage (e.g., havok physics, handling asset requests, communications, etc).
        • I'm not debating the fact that SL is vastly more complicated than Puzzle Pirates.

          The point is, the fact that it is more complicated may prevent it from ever becoming a large scale success.
  • Makes Sense (Score:3, Insightful)

    by BigCheese (47608) <dennis.hostetler@gmail.com> on Tuesday June 06, 2006 @01:26PM (#15481189) Homepage Journal
    Since Second Life allows users to create objects for the game world I would expect them to have a lot more CPU dedicated to running it. Since the user content is interpreted (I assume) then you need a lot of horsepower to allow sims to interact with those objects.
    • This was a major issue for Second Life. I got into it briefly but the total amount of lag involved in trying to design stuff was rediculous.

      The game would have been much better if it gave you an off-line sandbox where you could do your design and then move back online when you were done with your object.

      • Indeed, an off line sand box would be nice.

        I have also noticed that scripts are precompiled to some extent (likely into some sort of byte code) so the servers at least aren't having to burn time parsing every time the script is used. Though I do wonder if they do this compiling on the server side or the client. If they do it server side I would think there would be some improvements if they decided to use the client to compile the code and just send the script's text and byte code over the wire.
        • For security I would hope the compile takes place on the server.

          I would also think that by assigning servers to an area if the objects in the area have bugs (naaah, never could happen) it would only disable that parcel of land.

          Now if the SL Linux client would actually work I'd be happy.
  • I'm surprised this was made into a news story. It's something that people were talking about for a while now. The physics in Second Life are on all the time, even when no one is using that piece of land, so there's a large amount of overhead. I'm sure Linden can still turn a profit, but they're going to need to do some server optimization at some point. Something like a physics co-processor (Ageia or ATI or whomever) might actually be helpful...

    Bruce
  • World population is roughly 6.6 billion...
    Land acreage is roughly 37.3 billion acres...
    That comes to an average population of 2.85 people per 16-acres.

    So... 3 people per 16 acres should be the *average* load. In this scenario, I'd guestimate that max would be closer to 50-100x the average if you take into account high population density apartment buildings, etc.

    Even if we consider that they aren't simulating apartment buildings, though... my low-population density neighborhood has well over 3 people

    • But on the same note, 56 people don't live on 16 acre of farm land. They live in houses and apartments (ie: infrastructures) that are designed to handle that population load.

      My assumption is that the 3 people per 16-acres (1 server) is an average. And that in highly populated areas, more powerful servers or arrays (ie: infrastructures) are dedicated to the 16-acre block. On the fringes of the virtual world where population is vastly lower, a bottom end server may host a single person in the 16-acre block.

      No
    • In the real world, there are about six acres of land per person. I.e. three people take up about eighteen acres of land (on average). This actually seems pretty accurate.

      By contrast, New York City has about forty people per acre.

      Of course, that's just land area. If you include water area, both those numbers would be lower.

      Land area:
      World: http://www.infoplease.com/ipa/A0001763.html [infoplease.com]
      NYC: http://en.wikipedia.org/wiki/New_York_City [wikipedia.org]
  • stupid comparison (Score:4, Insightful)

    by zyte (896988) on Tuesday June 06, 2006 @01:37PM (#15481301)
    comparing the number of servers it takes to run puzzle pirates and the number of servers it takes to run second life is unbelievably stupid. I'm just going to mention a few main points on how this is ridiculous but I'm sure there are more. Player Created Content. In second life you can upload your own textures, sounds, and model animations to the linden servers. This undoubtly takes up a ton of space. Flexibility of objects. Every object within second life is not only player created, but it's base properties (size, shape) can be manipulated. On top of that most items within the game are made up of multiple objects, so you can have up to thirty individual peices to make up a single hat or chair. Quite a bit of data to push around. On top of that you have the million different variants for the player models themselves, how big the eyes are, does the face slant to the left or the right, D or DD. These are completely different games with completely different amounts of data to push around. Saying second life is poorly managed simply because your game can handle the same number of people on less servers is ignorant and irresponsible.
  • by joshv (13017) on Tuesday June 06, 2006 @01:49PM (#15481422)
    The big difference with Second Life (SL), which I am sure is hugely 'wasteful' of server CPU, is scripting. Any user can create an object and attach one or more scripts to it. These scripts can communicate with other objects, with Avatars, change the state of the object, create new objects, listen for input, etc... It is not unusually to see a sophisticated Avatar with many hundred object attachments constituting its 'custom'. Each of these objects can have an embedded script, which runs on the server. That's one Avatar. Now think about ten such Avatars congregating in once place, all of these objects interactive with each other, and the each of the Avatars in real time. This requires a lot of processing power, and loads of inter-object communication.

    LSL (the name of the scripting language) is interpretted, and oriented towards simplicity, not speed. It's goal is to make it relatively easy for users to create richly interactive and complex objects, at the cost of server CPU.

    So yes, per Avatar, I am sure SL uses more server CPU than any other massively multiplayer game, but that's because it offers an extremely rich and customizable experience.
    • Another big factor in SL's server load is the Havok physics engine. Sometimes it only takes a few complex physics-enabled primitives to bring a server region to a crawl. Also, avatars are always physics-enabled.
    • Don't forget bandwidth, either. SL, unlike most MMO's, doesn't store ANYTHING locally. Every texture and prim is loaded dynamically from the server (hence all the "draw-in" whenever you fly around). This must eat up a HUGE amount of bandwidth compared to something like WoW.

      -Eric

  • by Anonymous Coward
    The things that distinguish this setup are that

    a) They charge users per acre of virtual world that they 'own'. The article claims that the monthly income from 16 acres is $200 - which is gonna pay for a cheap bare-bones server in just a few months. As their user base goes up - so does their income - and so they buy more servers.

    b) Remember that user scripts continue to run even when there is nobody inside the 16 acre patch to see it happen. There was a /. story a few days ago about someone who built a sy
    • The article claims that the monthly income from 16 acres is $200 - which is gonna pay for a cheap bare-bones server in just a few months.

      Actually, the price of the server itself is already covered up front. New server regions which are added to the grid are first auctioned off for >=US$1000 (usually to the land resellers).

      There is a one-time cost to initially procuring the land you want. If you leave or move, you can recover this cost by selling the land. The monthly fee (from $5 for 1/8th acre up to
    • As their user base goes up - so does their income

      Yeah, assuming that everyone in SL buys a $200 a month island of their own. But of the hundreds of thousands of SL users there are, what, less than 100 islands? Many, if not most, aren't paying ANYTHING per month, but are still eating CPU cycles and bandwidth.

      -Eric

  • Let's just say it. Player generated content is great, but when given too much control, people just start putting all sorts of low-quality nonsense and you have to put with it.

    Not to add SL really missed the last few advancements in 3D technology and looks like a bunch of polygonal edgy constructions with blurry textures on it.

    I don't know why or how, but their whole site and promotional material looks like created by wannabe's (player content again?).

    Their idea is great, but they should really jump into 21-
  • While they make it sound like it is very easy to just throw more CPUs at the problem, my question is...

    How are they going to power and cool all of those CPUs?

    If SL currently runs on nearly 2600 machines, and each of those consumes a meager 200 watts, you would need about 520kW to power them.

    The power needed to cool the machines is even greater.

    How much power and cooling capacity does their data center have? What will they do when the run out?
  • Moores law (Score:3, Interesting)

    by captainclever (568610) <rj AT audioscrobbler DOT com> on Tuesday June 06, 2006 @03:54PM (#15482502) Homepage
    Moores law will certainly feature in their business plan :)
  • This seems to be a phrasing problem. It SOUNDS like they're saying "Second Life can only handle three users per server", but what I think they actually MEAN is "Second Life has, on average, 3 users per server during peak usage." In other words, their servers may actually be ABLE to handle 30 users each, or 300 (or 3), but we don't actually know -- all we know is that the server/user ratio right now is about three users per server at peak times.
  • That's not how SL is scaled.

    First, each virtual island is run on each server, aka a sim. All the users that are in the sim are handled by that sim's server. We've run over 100 users per sim in a conference setting, more by splitting the area over four sims, without too much delay. It's not like all "three people per sim" are spread out, they're may be some sims that don't have anyone in there and can be powered down a bit.

    Each user's assets (how the person looks, any attachments to make him/her look frea

<<<<< EVACUATION ROUTE <<<<<

Working...