Microsoft Rolling Out Windows Azure Improvements

Microsoft on Wednesday described three Windows Azure improvements designed to assist developers using its cloud-based operating system.

The new Windows Azure additions include geolocation, FastCGI and .NET full trust. The geolocation addition will help optimize applications hosted on the Windows Azure platform. FastCGI assists with porting native code to Window Azure. The .NET full trust feature helps with .NET library support for code.

Windows Azure is currently being tested as part of a community technology preview (CTP). However, Microsoft expects to announce the commercial availability of Windows Azure-based services in November, close to its Professional Developers Conference (PDC) in Los Angeles, according to Steve Yi, product manager for the Microsoft Azure Services Platform.

"We will continue to be in a CTP mode through the majority of calendar-year 2009," Yi explained. "And we'll be updating and unveiling new features every couple of months leading up to that."

The geolocation option for Windows Azure is designed for users who want to keep their applications and data together to improve performance. This feature will be available in the next couple of weeks, Yi said.

Microsoft currently has two Windows Azure datacenters in the United States, one in the Northwest and one in the South. When developers deploy their applications to the Windows Azure cloud, they'll be able to specify the geography and the datacenter at which the applications will run, Yi explained.

Geolocation will help with legal requirements for data residency and mobility when Microsoft rolls out its international datacenters. Microsoft won't disclose the specifics, but at least one international datacenter is planned for Dublin, Ireland sometime in 2009, according to a Microsoft spokesperson.

Microsoft also added support in Windows Azure for FastCGI, which is a protocol is used to connect applications to external Web servers. Developers can use "Visual Studio Tools for Windows Azure" to package these apps. The FastCGI addition reflects Microsoft's policy of supporting programming languages other than .NET-based ones in Windows Azure, such as PHP, Python and Ruby.

Lastly, Windows Azure now supports .NET full trust, which enables the full use of the .NET library and provides a bridge to the cloud for existing code assets, according to Yi. It facilitates the ability of developers to take managed code assets and redeploy them in Windows Azure, he explained. However, a Microsoft blog warned CTP testers utilizing .NET full trust that they face some registry modification restrictions on Windows Azure.

Microsoft is providing redundant code support for CTP testers after a Friday 13th incident that caused some Windows Azure services to fail. Microsoft's servers began to slow and fail after "a routine operating system upgrade" was performed, company officials explained.

"For all of our CTP users, we realized that this issue would not have happened if there were actually redundant instances for users deploying to Windows Azure," Yi said. "So, for all our CTP users, they will [now] have at least two instances available to deploy their applications."

Many users perhaps would like to run Windows Azure on their own server farms. However, that's not in Microsoft's plans, Yi explained.

"What we described as Windows Azure will not be a SKU for enterprise customers to try to create their own cloud and it's not something that we would be licensing to hosters," Yi said. Doing so wouldn't be practical because of Microsoft's hardware design for "massive multitenancy," he added.

Microsoft is also planning to deliver "a full relational database in the cloud" via SQL Services that will be available in the "second half of 2009," Yi said. Microsoft is currently shifting its strategy in response to customer preferences. Customers want the hosted version of SQL Server to work like the on-premises installed version.

"On March 10, we announced an updated roadmap to SQL Data Services," Yi said. "So the current model for SQL Services that we announced at PDC we will be transitioning to offering a full relational database that offers a lot more compatibility with what you see with an on-premises SQL Server database."

Microsoft currently offers just one database management service, SQL Data Services, which runs on Windows Azure. The company considers SQL Data Services to be a "subset of SQL Services," a Microsoft spokesperson explained by e-mail.

For blob data, Windows Azure Storage is the best place to store the data, Yi said. For purely relational data, SQL Data Services is the place to put it right now, he added.

Microsoft has migrated only a few of its online applications to the Windows Azure platform since its October debut, according to a recent Ars Technica article. Steve Martin, Microsoft's senior director of developer platform product management, is quoted in the article as saying that "only Live Meeting, Live Mesh, and a select few other infrastructure technologies are currently running off of Azure."

For more Windows Azure information of note to developers, see the video on building Web applications with Windows Azure, a talk given at Microsoft's recent MIX09 event.