缓存通知配置在Windows Azure缓存预览中不起作用

时间:2012-10-19 22:25:00

标签: c# azure azure-caching

我正在尝试设置Windows Azure缓存预览版实现,但是我遇到了使本地缓存配置生效的问题。这是我目前的配置:

<dataCacheClients>
  <tracing sinkType="DiagnosticSink" traceLevel="Error" />
  <dataCacheClient name="default" requestTimeout="30000" 
                   maxConnectionsToServer="5" isCompressionEnabled="true">
    <autoDiscover isEnabled="true" identifier="{My Role Name}" />
        <localCache isEnabled="true" sync="NotificationBased" 
                    objectCount="100000" ttlValue="300" />
        <clientNotification pollInterval="60" />
  </dataCacheClient>
</dataCacheClients>

我使用Ninject创建默认缓存对象,如下所示:

Bind<DataCache>().ToMethod((context) => new DataCacheFactory().GetDefaultCache());

当我没有使用本地缓存做任何事情时,这个注入工作正常,但我遇到了将大型数据集放入缓存(超时)的问题,所以我想我会看到使用本地缓存会导致什么行为。

由于我更改了配置(基于MSDN上的this article,请参阅该部分中的“角色缓存(预览)”),我收到以下错误:

  

ErrorCode ERRCA0015:SubStatus ES0001:基于通知的失效   不支持,因为Cache未配置为支持   通知。

这有点令人困惑,因为我认为这就是dataCacheClients配置部分应该做的事情。我是否需要在DataCache对象本身上以编程方式设置某些内容,或者我是否在Web配置中遗漏了某些内容?

1 个答案:

答案 0 :(得分:1)

您需要确保服务器端的命名缓存已启用通知。这可以在Visual Studio中的Azure缓存服务器端的“缓存”选项卡下查看。