Microsoft's New AppFabric Serves Up Composite Apps
During the opening keynote at the Microsoft Professional Developers Conference in Los Angeles on Tuesday, Microsoft President of the Server and Tools Business Bob Muglia introduced AppFabric as a foundational component of Microsoft's Windows Server and Windows Azure strategy.
AppFabric comprises a number of already existing technologies bound together in an abstraction layer that will help establish a common set of target services for applications running either on-premise on Windows Server or in the cloud on Windows Azure. Burley Kawasaki, director of Microsoft's Connected System Division, described AppFabric as a logical next step up in .NET abstraction.
"We really see AppFabric as being the next layer that we add to move up the stack, so we can provide a developer with truly symmetrical sets of services, application level services that you can take advantage of, regardless of whether you are targeting on-premise or cloud platforms," Kawasaki said. "This is an additional level of abstraction that is built into the system model, just like SQL as an example uses T-SQL as a common model, whether or not you are on the cloud."
Kawasaki said that AppFabric will help fix a problem facing Microsoft developers today. ".NET is a consistent model today, but when you do File/New to write an app for Azure, your whole application looks a little different than it would if you were just writing an app on-premise."
Beta 1 of AppFabric for Windows Server 2008 R2 was announced during the opening PDC keynote on Tuesday. A community technology preview (CTP) version of AppFabric for Windows Azure is promised sometime in 2010. The goal, said Kawasaki, is to present a uniform developer experience and service interface for both on-premise and cloud apps.
"They should be fairly identical in terms of capabilities. That should be the goal, so you as a developer do not have to learn different skills. It will be as symmetrical as possible," Kawasaki said. "There will always be things you have to know about the deployment environment you are running on, but if we do our job right again, the AppFabric is taking the lower-level dependencies in mind."
AppFabric incorporates a host of already-familiar technologies to .NET developers, including the Velocity distributed caching engine, the Dublin app-server extensions focused on Windows Workflow Foundation (WF) and Windows Communication Foundation (WCF), as well as management enabled via Powershell scripting and Internet Information Server (IIS) integration.
Kawasaki singled out Silverlight 4, the upcoming version of Microsoft's rich Internet application platform announced by Scott Guthrie on Wednesday, as a platform poised to take advantage of AppFabric.
"A big push in Silverlight 4 is building on top of the WCF service model and the RIA services," said Kawasaki. "One of the benefits you get from that is because AppFabric just manages WCF as a service, suddenly your Silverlight 4 backend now can be more scalable and reliable when using AppFabric as that scale out middle tier. I think that's one of those things that we'll start talking about more now that the Silverlight 4 announcement was made. Increasingly there are a very broad set of services that people are really excited about. People want to build Silverlight 4 apps and scale that and now there is a solution for that."
What should developers be doing with all this? Kawasaki urges developers to jump on the AppFabric for Windows Server beta. "My advice to developers would be to start using beta 1 for on-premises. That is the best way to get started whether you are using on-premise or in the cloud."
Michael Desmond is an editor and writer for 1105 Media's Enterprise Computing Group.