Second Life Gets A Virtual MakeoverSecond Life Gets A Virtual Makeover
Reality intrudes on Linden Lab's virtual world, as problems crop up with performance and capacity.
March 23, 2007
To help it manage its remarkable growth, Linden Lab is looking for IT staffers who have done it before. "We're looking for an operations-specific person who was involved in scaling a server farm from where we are today, which is 2,000 boxes, to 10,000 boxes," Miller says. "There are very few people in the industry who have done that."
To maintain the illusion that Second Life is a virtual world, avatars and their associated attachments and processes need to be able to transition from one sim to another seamlessly. Avatars near the edge of one sim need to be able to look over and see activity in the next sim, just like people in the real world can see activity on the next lot of land. All of this needs to happen even if the sims are on different servers and even if the handoff between sims must bridge 1,700 miles between Dallas and San Francisco.
Miller says the Dallas facility, which went live in December, was a necessity. "We're consuming a lot of floor space. It makes sense to have it geographically distributed. It creates redundancy and backup," he says. Still, residents have expressed concerns that the two locations have contributed to performance slowdowns, which they call "lagginess."
Linden Lab has designed the network so that the handoff between co-location facilities doesn't result in increased lag, Miller says. One method is to cluster sims so that regions that are in proximity to each other in Second Life are running on servers in the same real-world location. "If a Texas-based simulator needs data from a database in San Francisco, it gets it, and it doesn't block action on the part of the user," Miller says.
Objects in Second Life are built using a combination of primitive shapes, or "prims," which are sized, scaled, and stretched as needed. Images called "textures" are applied to the surfaces of prims to alter their appearance. For example, textures would be used on the exterior wall of a virtual skyscraper to provide the appearance of bricks and windows.
The scripting language used in Second Life, which is similar to C, is called LSL, for Linden Scripting Language. LSL determines how objects behave, controlling the waving of virtual hair or the driving a virtual boat. Everything in Second Life is composed of some combination of prims, textures, and LSL scripts.
In an August video, Ondrejka described how he decided to write his own scripting language after he determined that he knew more about writing one than he did about modifying one, like Java, to meet Second Life's requirements. "It got written in a week, like all scripting languages," Ondrejka said. Performance is slow, at only 150 million instructions per second, with inconsistent syntax and limited support outside of Second Life. "Nobody's using LSL to do real-world things," he said.
To improve performance, Linden Lab is porting LSL to Mono, the open source implementation of Microsoft .Net. In tests, the Mono implementation of LSL runs 1,000 times faster than the current version. Linden Lab plans to begin testing the Mono implementation in the second quarter. Second Life's eventual use of Mono will let users incorporate scripts in other Mono-compliant languages, such as Visual Basic and C#.
Another measure to manage growth is to move some of Second Life to the Web. To experience most of Second Life, users need to download and install the specialized client, but they can manage parts of their Second Life experience from the Web. Users can create accounts, check whether their Second Life friends are online, and buy and sell land and Linden Dollars using a Web browser. Linden Lab is considering how it should expand Web functions to reduce the burden on its servers, which will probably involve creating open APIs to let third-party developers write their own apps.
As another means of improving performance, Linden Lab is looking to provide tools to allow users to see how much system resources they're using. Some of the attachments that users create to decorate their avatars make intensive use of system resources, and Linden Lab hopes that, if users become more aware of the resources they're using, they'll use them more wisely.
Second Life's growing pains prove that reality intrudes even in a virtual world.
About the Author(s)
You May Also Like