From Microsoft

Sep 7, 2009 14:25 GMT  ·  By

With Doloto, Microsoft is offering web developers a tool designed to increase the performance of complex web 2.0 websites which contain a lot of code. Available through MSDN DevLabs, Doloto is advertised as a download time optimizer for web 2.0 applications. Essentially, Microsoft is describing the release as an AJAX application optimization tool, and is pointing out that its utility can truly be leveraged on web apps of the size of Bing Maps or Hlotmail. S. Somasegar, Senior Vice President, Developer Division, has explained that the main role of Doloto is to assess AJAX application workloads and, based on the results of the analysis, to split the code of any web application. This process is done automatically, the company emphasized.

“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,” Somasegar noted. “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.”

According to Somasegar, Microsoft ran various tests on a variety of AJAX applications and taking into consideration multiple network conditions. The software giant found that Doloto contributed to cutting down volume of JavaScript code that gets downloaded by more than 40%. The reduced amount of downloaded code translates into performance gains, most visible in the startup phase of the web apps, which gets a speed boost of approximately 30-40%.

The first thing that Doloto does for any web app is to create a profile. Somasegar explained that in order to do this, the tool monitors all JavaScript files and instruments intercepted via a proxy set in place on the local machine. The best thing about how Doloto runs is that the tool doesn’t need access to the servers where the web application is hosted. The tool is perfectly capable of getting its job done from any computer.

“Profiling information is used to calculate code coverage and a clustering strategy. This determines which functions are stubbed out and which are not and groups functions into batches which are downloaded together, called clusters,” Somasegar added. “ Doloto rewrites JavaScript code. It then saves it to disk so that you can upload it to the server. The entire process happens on your machine, without needing access to the server.”

Doloto is available for download here.