Information Week Article on Second Life’s Backend

Information Week has a four page article from inside the Second Life datacenter at http://www.informationweek.com/news/showArticle.jhtml?articleID=197800179.

From a scripter’s perspective this is interesting:

In an August, 2006 video, Ondrejka described how he wrote LSL. “It got written in a week, like all scripting languages,” Ondrejka said. He decided he needed to roll his own scripting language for Second Life after he determined that he knew more about writing a scripting language than he did about modifying another language, like Java, to meet Second Life’s requirements.

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 Linden Lab’s current version.

Linden Lab plans to begin testing the Mono implementation in the second quarter. Later, Second Life’s transition to Mono will enable the software to support scripting in other Mono-compliant languages, such as Visual Basic and C#.

I’d love to have the option to code in LSL or any .NET language, allowing for the development of scripts in Visual Studio.

The article also talks about scaling. I remember a technology demo by IBM a while back where a first person shooter was split across multiple servers, but not by physical zones. Instead the split was done dynamically and as players ran around the level their color changed as they moved from server to server with the system constantly balancing the work across the machines. If Second Life used such a system it would be better able to scale busy sims with less wasted resources for empty ones. The redevelopment needed to use such technology would be massive so the implementation is unlikely but the idea of servers splitting and joining to handle busy sims is interesting. Of course, how do you price an island when there’s no telling how many servers may be powering it at any given time?

Leave a Reply