Microsoft Speeding Up SkyDrive on the Client Side

Microsoft on Thursday described in greater detail how it has optimized Windows Live SkyDrive, which is the company's free cloud-based storage and file-sharing service for consumers.

Steven Bailey, a development manager for Windows Live, said in a blog post that the new SkyDrive architecture "basically is AJAX" (or Asynchronous JavaScript and XML) technology. So far, Microsoft has only redesigned the photo viewing and file browsing features in SkyDrive to use this new architecture, but the rest of the site will also go in that direction in the near future.

Microsoft had tried using AJAX in past years but found that approach to be too slow due to browser limitations. Other problems back then included slow end-user connections, slowness with JavaScript and XML parsing, plus "a lack of client-side caching," Bailey explained. The new SkyDrive is particularly focused on improving client-side caching as a way to speed up the experience for users. Techniques include an "in-memory cache" for a current SkyDrive session, plus pre-caching of some items to improve file views.

For accessing user data, Microsoft's new SkyDrive architecture uses a protocol based on HTTP and JSON, which filters some data for caching on the client side. The Microsoft team is currently trying to make this approach "work well across all of the major browsers," Bailey said. He added that the data format approach in JSON "is network efficient, and browsers can cache it really fast." Microsoft previously used a method that pulled a bunch of data from SQL Server and ran it though ASP.NET servers before delivering the data to the client, Bailey explained, but that server-intensive approach was less efficient.

SkyDrive also supports "virtualized list views," which will pull only the data or HTML that's needed for a current view in a browser. This technology will work as the user scrolls through lists on the screen by "dynamically fetching data and rendering the list view," Bailey stated.

Microsoft is using HTML 5 capabilities to improve animations in SkyDrive, but it has stuck with Silverlight for upload controls "because it allows us to resize a photo to a smaller size before it's uploaded," Bailey explained. In addition, Microsoft likes to build JavaScript on top of the open source JQuery JavaScript library simply because its developers find that approach more effective.

SkyDrive is turning out to be a prominent part of Microsoft's connected devices architectural approach on the consumer side of its general cloud computing push. For instance, the "Mango" update to the Windows Phone 7 operating system, planned for this fall, will add SkyDrive access for smartphones, allowing photo storage and file sharing via Microsoft's cloud. According to Bailey, Microsoft reuses its SkyDrive code between the PC and mobile SkyDrive views, so users get performance improvements across both devices.

SkyDrive also serves as a hub for document sharing using Microsoft Office Web Apps, which are free for use by consumers but not so for organizations. Earlier this month Microsoft enabled Word Web App coauthoring for SkyDrive users. Real-time collaboration is currently possible using the OneNote Web App over SkyDrive. In addition, simultaneous editing is possible using the Excel Web App via SkyDrive.

Office Web Apps are still limited compared with their full-featured Microsoft Office cousins, but Microsoft has been slowly adding improvements.

About the Author

Kurt Mackie is senior news producer for 1105 Media's Converge360 group.


comments powered by Disqus

Subscribe on YouTube