Amazon and Microsoft, two of the leaders in the evolving cloud-services space, are offering customers a number of wares that -- at least on the surface -- sound similar. But in the area of caching, the paths of the two providers are diverging.
Amazon, aware that Microsoft was poised to finally take the wraps off its cloud strategy/services, launched a preemptive strike against the Softies earlier this fall. The result: Both companies are offering hosted SQL Server-based database services (Amazon's SimpleDB and Microsoft's SQL Services); an underlying storage service (Amazon's S3 and Microsoft's Azure Storage layer): a "cloud operating system" (Amazon's EC2 and Microsoft's Azure OS); the ability to host Windows apps/services on remote datacenter servers.
Amazon launched last week a test version of its promised content delivery/caching service, known as CloudFront. CloudFront is designed to help speed up Amazon-hosted content served across a network of distributed datacenter servers.
Microsoft, for its part, is building a distributed, in-memory caching solution, codenamed "Velocity." Microsoft first took the wraps off Velocity this past summer. In late October, Microsoft released the second Community Technology Preview (CTP) 2 test build of Velocity.
How does Velocity differ from CloudFront? I posed that question to Microsoft late last week and received the following response, via a company spokesperson:
"Based on our understanding of this announcement, Amazon has essentially set up a self service content delivery network (CDN), which could compete with the offerings of other CDN providers. This is different from Velocity, which is a tool for application developers to provide scalable data caching solutions within their own servers (i.e., Microsoft doesn't host the cache for them)."
(Microsoft has been grapling for years with how to provide/make use of CDN services for its own cloud services, like Hotmail. Here's a ThinkWeek paper dating back to December 2006 elaborating on how Microsoft was building out what it was calling the "Edge Computing Network" in its own environment. Microsoft has been licensing CDN technology from Limelight Networks -- a company which is a long-rumored Microsoft takeover target.)
Back to Velocity vs. CloudFront. Based on Microsoft's positioning statement, the Redmondians aren't offering customers a caching service in the cloud. Instead, it is providing customers with a caching technology that they can use in building their own cloud apps. Here's a picture from a Microsoft slide deck on Velocity (from the Professional Developers Conference) that shows where Velocity fits in Microsoft's world.
(Click on the image below to see it at full size):
Microsoft is planning to release CTP 3 of its Velocity caching technology at its Mix conference in the spring of 2009 and the final version of the product in mid-2009, the PDC slides note. The first release of Velocity will be available as a "free, out-of-band release for the .Net Framework," according to the slides.
Developers: Any preference for one solution over the other? Do you want your cloud vendor to provide you with hosted caching? Or would you rather cache your own apps and then host them?
(A total aside: Is Microsoft running out of codenames? There are three Velocity projects I know of at the company at present: The Velocity in-memory caching technology; the Velocity reseller-channel program; and the Velocity initiative focused on getting Windows OEMs to improve customers' out-of-the-box experience with new Windows PCs.)