MemCache vs Azure Caching MemCache vs Azure Caching azure azure

MemCache vs Azure Caching


You actually need to evaluate 3 possible options:

  • Windows Azure Shared Caching (previously Windows Azure AppFabric Caching)
  • 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.


From what I can tell, Azure cache isn't compatible with memcache:

root@**:~# memccapable -h **.cache.windows.net -p 22233 -t 1 -bbinary noop                             Errno: 110 Connection timed out [FAIL]binary quit                             Errno: 110 Connection timed out [FAIL]binary quitq                            [FAIL]binary set                              Errno: 104 Connection reset by peer [FAIL]binary setq                             Errno: 104 Connection reset by peer [FAIL]binary flush                            Errno: 104 Connection reset by peer [FAIL]binary flushq                           Errno: 104 Connection reset by peer [FAIL]

I gave up on trying to make it work. Installing memcached on an Linux Azure VM works great < 1ms latency.