MemCache vs Azure Caching

You actually need to evaluate 3 possible options:

  • Windows Azure Shared Caching (previously Windows Azure AppFabric Caching)
    • Managed, multi-tenant shared cache
    • Not free (pretty expensive actually)
    • Quotas apply in terms of cache size, transactions per hour, bandwidth per hour, concurrent connections
    • Slower than Windows Azure Caching (preview)
    • Throttling can occur
    • FAQ: http://msdn.microsoft.com/en-us/library/windowsazure/hh697522
  • Windows Azure Caching (Preview)
    • Uses the free memory of your roles (so you don't need to pay anything extra to use this)
    • No quotas (except for the memory available on your instances), no throttling, ...
    • Dedicated to your cloud service
    • Improved performance over Shared Caching (see end of this page)
    • Support for large caches over 100 GB
    • Support for memcache binary and text protocols (so existing applications that are based on memcached can leverage the caching preview)
    • Visual Studio support
  • Memcached
    • Can be used in Windows Azure
    • Uses memory of your roles, just like the caching preview
    • Free, just like the caching preview
    • No Visual Studio support
    • Dedicated, no quotas, support for large caches, ...

I don't have any benchmarks, but since both Windows Azure Caching (Preview) and Memcached are dedicated solutions using the memory on your roles and support the memcached protocol, you might simply go for the Windows Azure Caching (Preview) for the Visual Studio and .NET support. And once it leaves preview you'll be able to get support for it as well.


Note that Windows Azure Caching has been retired.

The replacement Azure Cache for Redis, is Redis compatible, so Memcached vs. Redis? might help you.