Windows Azure - AppFabric Caching Service Introduction

In this article I would like to list the features of the Caching Service in Windows Azure AppFabric.


In this article I would like to list the features of the Caching Service in Windows Azure AppFabric. As you know the services provided by AppFabric are shown below.

AppWinAzr1.gif

Why Caching is needed?

In real business world scenarios the cost of building information will be high. In this case if the same process is repeated for each user requests then there exists some possibility for storing the information for later reuse. This will increase the Speed of Processing the request. In the server side this will free up the computing resources to great extent.

Caching involves storing the information closer to the application logic. The data stored in the cache could be:

  • CLR Object
  • Xml
  • Binary Data

So caching is a good solution for the above scenario. But in the case of distributed caching, if the application is load balanced and each server needs to manage the update cache the problems become exponential. Thanks to the AppFabric Caching as it handles all these problems and the developer needs to concentrate on the application logic.

Some of the core aspects of Caching are depicted below:

AppWinAzr2.gif

Some Theory on AppFabric Caching Service

Distributed Caching: The Cache runs on N nodes with each node sharing the same configuration. The nodes will communicate each other.

Cache Cluster: Each Cluster consists of multiple cache server nodes. The first node takes care of the cluster configuration and the next nodes can join the existing cluster with no configuration. Cluster automatically adjusts itself to the dynamic nodes addition or removal.

Windows Service: The caching is managed through Windows Service running on each node.

Scalability: Easier scalability of caching by adding nodes. More nodes results in more memory for cache objects

Performance: High Performance can be achieved in memory caching called Local Cache.

Availability: The existence of multiple nodes ensures higher availability on server failovers.

Native API: .Net native code can be used to operation on the AppFabric Caching. For ASP.NET through a provider change the session state can be cached across a cluster.

Provider Model: The Cache Configuration is based on Open Provider Model. The existing provider models include Sql Server and XML file based network share.

Projected Size: Cache Size to be projected based on Small, Medium and Large sizes. Small size include 1-5 nodes, Medium size include 6-15 nodes, Large size include more than 15 nodes.

Administration: PowerShell can be used to administer Cache. The PowerShell can be invoked through code as well.

Cache Events: Caching supports events and the client can register for events which will be called back to them.

AppWinAzr3.gif

Summary

In this article we have seen the AppFabric Caching service features. In the next one we can experiment with code to access the Cache.