We’ve spent the last week at Microsoft’s TechEd 2011 conference. Like previous years this wasn’t an event for big news stories, more a week-long university, full of deep dives into existing technologies, and a chance to see how tools and technologies from all parts of the Redmond giant fit and work together.
Even so, Microsoft manages to sneak a few announcements into TechEd. This year, with a focus on the cloud and cloud development, the team behind Microsoft’s service oriented application middleware, AppFabric, announced a set of new customer technology previews of their tools. AppFabric is at heart a message bus technology, nothing particularly new in the world of SOA development, but one that’s very important for Microsoft’s cloud strategy. Applications built using AppFabric, when it’s complete, will be able to run on the Azure platform as a service cloud or in your data centre – and more importantly migrate from one to the other.
We sat down with the AppFabric team’s Burley Kawasaki to talk about the upcoming releases. The first comes this week, with a new CTO of the Azure AppFabric. This adds full publish and subscribe messaging capabilities, extending the AppFabric service bus so it can work with services that are both in and out of the cloud, with point-to-point messaging using queues and the ability to use multiple topic-based subscriptions. Kawasaki describes it as “mission-critical reliable-grade messaging”. Certainly some customers see it as such, and one airline is using the service bus components of AppFabric to get its gate workers out and about with mobile devices, using it to drive what it calls “an airport-in-a-box”. The system is currently in pilot, and is rolling out to 100 locations across Europe. The service bus is used to bridge the airport, linking handheld devices to cloud services, handling event processing and alerting.
Kawasaki noted that the CTP release will have both .NET and RESTful interfaces at launch. Other SDKs will be coming soon, with Java and Ruby to start with. The aim is to be open – ans support as many technologies as possible.
There’s another AppFabric CTP due next month, adding composite application development tooling (as originally detailed at PDC10). This will extend Visual Studio, and let you create a package visually, before taking the resulting composition model and uploading it to the AppFabric application manager. This uses the package to provision automated deployment. It’s a new higher level view on the whole application, and you can use it to set and see the SLA for the application in the Azure portal. Kawasaki describes it as “Seeing the knobs that can be turned to fix issues, doing it at a higher level.”
The tools will be able to handle rules for the application components, and you’ll be able to manage policies in the AppFabric application manager. The new tools are targeting Azure only to start with, but there will be a version for Windows Server eventually, giving a common foundation for development and test.
Kawasaki also talked to us about an upcoming update to SQL Azure, codenamed “Austin”. This will bring SQL Server’s streamed insight technologies to the cloud, letting you do real time queries against high volume streams of data. Where this gets really interesting is that it will work with the AppFabric service bus, so you can run queries against live data, giving you real time analytics on your services and applications. Austin is in private CTP now, and will open to the public by the end of the year as a multi-tenant service – you’ll be able to subscribe, wire up and go.
While Azure is stateless, there’s going to be statefulness in the AppFabric application manager, giving you a middle tier with state scaling in a new type of container. This will build on the technologies in Windows Workflow and in the Windows Communication Foundation, replicating state in the middle tier using concepts from the AppFabric distributed cache. The AppFabric caching features are now live on Azure, so there’s consistency between the platforms.
AppFabric is an important technology, and one of the things that will drive Azure’s success. The ability to build applications once and run them anywhere is a huge benefit to developers, on the cloud (both public and private), in the data centre, and everywhere from mobile to desktop and beyond. Applications need to be able to migrate between your private network and the public cloud. It’ll save time and money – and take advantage of the distributed, highly available, scale out nature of the cloud to hopefully finally deliver on the benefits of SOA that have been promised for over a decade now…