What is Exactly an AppFabric in Windows Azure?

404Dreamer_ML picture 404Dreamer_ML · Feb 28, 2011 · Viewed 8.2k times · Source

I am trying to understand exactly an AppFabric in Windows Azure, What is the difference with Worker Role and Web Role and How to create a project of AppFaric in Visual Studio 2010, i mean which kind of project ?

Thx.

Answer

David Makogon picture David Makogon · Feb 28, 2011

Adding a bit to vtortola's answer:

There are three core areas of the Windows Azure platform:

  • Windows Azure (which provides virtual machines and massively-scalable storage through Blobs, Tables, and Queues
  • SQL Azure (which is a large subset of SQL Server), offering a full relational database up to 50GB
  • Windows Azure AppFabric (a set of services that you can opt into, currently comprising access control, connectivity, and caching)

When you construct your Windows Azure application, you can really pick and choose what pieces of the platform you're interested in. For instance, Windows Azure provides Web and Worker roles (both essentially identical virtual machines running Windows Server 2008 or R2, but Web roles have IIS enabled). If you need a relational database, you can very easily set up a database. And, then there's AppFabric:

  • If you need to connect to a set of web services on premises, for instance, you can use the AppFabric Service Bus (a secure way to connect without having to open up a firewall)
  • If you need to actually connect to an entire computer on-premise, use Azure Connect (a software VPN).
  • If you want to cache data (such as asp.net session state) between instances of your virtual machines, enable and use the AppFabric Cache (currently a Community Technology Preview, so no pricing yet).
  • If you need to add access control to your application, use AppFabric's Access Control Service, which essentially lets you outsource your identity management.

There are quite detailed examples in the Platform Training Kit that vtortola referenced. Additionally, there's a complete Identity Management training kit.