1

I am looking for a distributed data (object) caching solution for my ASP.NET MVC app. Something alike Scale Out or NCache but preferably free.

I believe the System.Runtime.Caching.MemoryCache is a single server implementation of a cache.

I believe Azure has a distributed cache that ASP.NET apps can use but I am not sure of two things:

1) I don't really know what Azure is except for having a vague understanding that it is a marketing name for some services Microsoft provides such as (1) the ability to deploy your app on their hardware infrastructure (what is popularly known as the cloud) and (2) a collective name for an offering of software infrastructure such as Visual Studio and Eclipse plug-ins, class libraries that can be used from inside your app, etc. to help you do (1).

2) I am not sure if an ASP.NET application that I wish to deploy on my own hardware can use their Azure provided cache, as I read a vague assertion that went something like "Azure provides a distributed cache for ASP.NET apps that use Azure," which is becoming the fairly common, de facto standard for all communications from Microsoft.

Help.

2
  • 2
    Have you looked at Memcached? Commented Feb 1, 2013 at 12:52
  • No. Just heard about it long ago. I believe Facebook also uses it. For some strange and silly reason, I kept myself from believing that it could be used in .NET apps. Now that I think of it, it does seem silly that I believed that. I'll have a look right away. Commented Feb 1, 2013 at 13:02

2 Answers 2

2

You could use memcached. It's a very popular distributed cache system that you could deploy on your own infrastructure and use a managed client such as enyim.

Sign up to request clarification or add additional context in comments.

1 Comment

Thank you. I am just looking at the various API/clients for memcached. This one (memcachedproviders.codeplex.com) seems like an easy one to use.
1
  1. Couchbase is .Net adaptation of memcached. It is opensource and free.
  2. NCache is paid and more mature solution (They do offer Express version that is free).

I personally loved simplistic aproach of Couchbase but it lacked features like enumerating through the cached objects, clearing out the cache etc. NCache on the other hand offers same features as System.Web.Caching.Cache while providing extra features for distributed cache solutions.

P.S. I am not affiliated with either of the above companies.

2 Comments

I've used the Express version of NCache. It's API is exactly identical to the ASP.NET cache API. It's nice. I'll try Couchbase. Thanks for the recommendation. For now, I've already implemented memcached based on the above recommendation of Darin and Nicholas. It was a walk in the park. It is so easy and powerful.
Yes, we had to scale out our web server and NCache fit the bill without any refactoring. Just added reference to it and all implementation stayed the same.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.