Saturday, November 28, 2009

Virtualizing the web applications ------ Microsoft Web Sandbox


            Sandboxing is an integral part of application development. We program a code or develop an application but its not through without the testing or QA. The benchmark associated varies with the requirement,  but the QA or test parameters are very much remains same for all  the applications. Testing the application finds more value when its about web applications, plugins and tools, considering the consumer exposure and usage experience. Web needs better interoperability between rivals, technologies and web methodologies, owned by none but ruled by many. During the  development and deployment of the web gadgets and applications, I always felt the great need of a sandbox, as neither the dominant IE nor the firefox are relaible to check the performance of the scripts and so for debugging.

          Microsoft's  web sandbox,  was my first sandbox catch this year in early 2009, and has evolved well as a reliable sandbox platform. The well integrated CSS, AJAX, generic scripts etc. support & the performace makes it one of the collest  application I had witnessed in the year  2009. The sandbox, has some limitations, but Its a need when multiple technologies needs standardization over a platform.  The sandbox as states strict  implementation and support of W3C scripting standards, so trying beyond it, might take the code beyond sandbox periphery or might dig a hole. 

         During the launch of the IE7, and dealing with the application which behaves in an unexpected way was a bit of challenge. The introduced security features forced to revisit the old scripted code specially needing the enriched client side processing,  then series testing before pushing the re-programmed web app, with no sandbox. This sandbox is good enough to save time against hanging browsers, performace of the scripts, browser security traps etc. The sandbox is easy to implement on the internal  test  servers as its licenced under the open source program from Microsoft, though a regular client flavor and azure supported platform is also  available.

        The sandbox is designed considered performance over support for scripting features, but to me its ok, thats all I need on first part, quick test result for a script. The indefinite loop catch is not fully  bound to the time limit i.e.  if a script goes for doing a long mathematical calculation of recursive mutiplication, sand box doesn't seems to be able to pick it well as, performace detoriating code. The sandbox is easy to replicate the multiple instances of the scripts, I am not sure how threadsafe it is, but it worked well over the available test samples and few scripts I tried for sequential calculations.  The sandbox's QoS is quick to catch the unsafe codes, alerts well and enables multi-instance debugging. A sample code posted on the portal towards the self loading gadgets or web plugins gives the best insight about the checkpoints implemented. The best part of this sandbox is the capapbility to track the remote scripts by specifying the URL of the plugin codecs.




        The project of the web sand box is evolving well and is well defined,  forum support is very nice. I would keep on trying using this reliable sandbox, till I get any other at  par competitor.  This sandbox project is very helpful in testing the portable web applications, needing server side scripting, and can bring more trust to the third party applications over the web.

        Try the sand box at:- http://websandbox.livelabs.com/, the site has good set of resources, and documentations.

No comments:

Post a Comment