News
Microsoft Accelerating Client Side of SkyDrive
Updated photo viewing, file browsing features use AJAX.
Microsoft provides more information about how the company has optimized Windows Live SkyDrive, Microsoft's free cloud-based storage and file-sharing consumer service.
Steven Bailey, a development manager for Windows Live, used a blog post to explain how the new SkyDrive architecture is "basically is AJAX" (Asynchronous JavaScript and XML) technology. To date, Microsoft has redesigned SkyDrive's photo viewing and file browsing features to use this new architecture; the remainder of the site will follow in the near future.
Microsoft had tried using AJAX before but found that approach was too slow because of browser limitations. Other past problems included slow end-user connections, slowness with JavaScript and XML parsing, ands "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.