Microsoft: Doloto Speeds Up AJAX Apps

Microsoft releases a new tool known as Doloto that enhances the performance of Asynchronous JavaScript and XML (AJAX) applications.

Microsoft has released a new tool known as Doloto that enhances the performance of Asynchronous JavaScript and XML-or AJAX-applications.

In a blog post, S. "Soma" Somasegar, senior vice president of Microsoft's Developer Division, laid out the benefits of Doloto. Describing the problem users face, Somasegar said: "AJAX Web applications bring a variety of rich user experiences to the Web, but often those experiences require downloading a lot of code. The result is applications that are frustratingly slow to load and taxing to Web servers."

Yet, on its Microsoft Developer Network (MSDN) DevLabs site, Microsoft delivered Doloto, a tool that makes pages more responsive by decreasing the initial download size of complex AJAX Web applications. Doloto is a stand-alone client-side tool, Somasegar said. Doloto stands for Download Time Optimizer and is also the Russian word for chisel.

Added Somasegar:

""Doloto analyzes AJAX application workloads and automatically performs code splitting of existing large Web applications. Doloto enables applications to initially transfer only the portion of client-side JavaScript code necessary for application initialization. The rest of the application's code is replaced by short stubs; their actual function code is transferred lazily in the background or on-demand on first execution. Since code download is interleaved with application execution, users can start interacting with your Web application much sooner without waiting to download code that implements features they're not currently using.""

The Doloto tool works by initially profiling the application in question. Then the profiling information is used to calculate code coverage and a clustering strategy. Clusters are downloaded functions that have been grouped into batches. Once the clustering strategy is established, Doloto rewrites JavaScript code and saves it to a disk so developers can upload it to a server.

And Microsoft's results using Doloto show performance enhancements of up to 40 percent. Said Somasegar:

""In our experiments across a number of AJAX applications and network conditions, Doloto reduced the amount of initial downloaded JavaScript code by over 40 percent, resulting in startup often faster by 30-40 percent, depending on network conditions." "