15

我在使用 Memcache 和使用 Windows Azure 缓存之间纠结。我对他们中的任何一个都没有经验,所以我希望有人提出一些决定因素:

  • 价格
  • 表现
  • 便于使用
  • 任何事物
4

3 回答 3

38

您实际上需要评估 3 个可能的选项:

  • Windows Azure 共享缓存(以前的 Windows Azure AppFabric 缓存)
  • Windows Azure 缓存(预览版)
    • 使用您角色的空闲内存(因此您无需支付任何额外费用即可使用它)
    • 没有配额(您的实例上可用的内存除外),没有节流,...
    • 专用于您的云服务
    • 改进了共享缓存的性能(请参阅本页末尾)
    • 支持超过 100 GB 的大型缓存
    • 支持 memcache 二进制和文本协议(因此基于 memcached 的现有应用程序可以利用缓存预览)
    • 视觉工作室支持
  • 内存缓存
    • 在 Windows Azure 中使用
    • 使用角色的记忆,就像缓存预览一样
    • 免费,就像缓存预览一样
    • 不支持 Visual Studio
    • 专用,无配额,支持大缓存,...

我没有任何基准,但由于 Windows Azure 缓存(预览版)和 Memcached 都是使用您角色上的内存并支持 memcached 协议的专用解决方案,因此您可能只需选择适用于 Visual Studio 的 Windows Azure 缓存(预览版)和 .NET 支持。一旦它离开预览版,您也将能够获得对它的支持。

于 2012-09-13T12:46:32.097 回答
1

据我所知,Azure 缓存与 memcache 不兼容:

root@**:~# memccapable -h **.cache.windows.net -p 22233 -t 1 -b
binary 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]

我放弃了让它发挥作用的尝试。在 Linux Azure VM 上安装 memcached 效果很好,延迟小于 1 毫秒。

于 2014-01-10T19:37:17.317 回答
1

请注意,Windows Azure 缓存已停用

用于 Redis的替代Azure Cache 与Redis兼容,所以Memcached 与 Redis?可能会帮助你。

于 2019-08-20T03:51:12.973 回答