导出 (0) 打印
全部展开

配置模型(Azure 缓存的角色中缓存)

更新时间: 2010年7月

note备注
有关为你的应用程序选择合适的 Azure 缓存产品/服务的指导,请参阅 Azure 缓存常见问题解答

本主题介绍 Microsoft Azure Cache中的配置文件的用法。有两种类型的配置设置。

  1. 角色配置

  2. 客户端配置

note备注
只有基于角色的角色中缓存才支持为角色中缓存配置 角色的功能。

角色中缓存支持在 缓存 角色中托管的功能。这种类型的缓存将配置为云服务的一部分。通常,此操作在 Visual Studio 中执行。

note备注
此部分所述的配置设置仅适用于基于角色的角色中缓存。Shared Caching仅支持对 default 缓存的访问。Shared Caching不支持更改 default 缓存的属性。

若要了解配置设置,将这些设置与 Visual Studio 中的用户界面选项相关联会很有帮助。下面的屏幕快照显示了角色属性对话框上的“Caching”选项卡的一部分。

Caching 并置属性窗口

除了启用角色中缓存外,你还可以创建一个或多个命名缓存。每个缓存均指定自己的属性。下面的屏幕快照显示了“Caching 属性”选项卡的此部分。

为命名缓存 Caching 属性

这些用户界面选定内容将存储在配置文件中。首先,Caching 模块将加载到 ServiceDefinition.csdef 文件的 Imports 节中。下面的 XML 代码段显示了此行。

<Import moduleName="Caching" />

所有其他角色中缓存设置将存储在 ServiceConfiguration.cscfg 文件中。例如,下面是前面显示的“Caching”选项卡选定内容所对应的 ServiceConfiguration.cscfg 文件中的设置。

  <Role name="WebRole1">
    <Instances count="2" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.NamedCaches" value="{&quot;caches&quot;:[{&quot;name&quot;:&quot;NamedCache1&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:20,&quot;isExpirable&quot;:true,&quot;type&quot;:2},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:true}},&quot;secondaries&quot;:1},{&quot;name&quot;:&quot;NamedCache2&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:-1},&quot;expiration&quot;:{&quot;defaultTTL&quot;:25,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0}]}" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.Loglevel" value="" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
    </ConfigurationSettings>
  </Role>

在此角色配置中,大多数角色中缓存设置均与“Caching”选项卡上的选项有简单关联。但是,Microsoft.WindowsAzure.Plugins.Caching.NamedCaches 设置较难于读取。它使用 JSON 语法来描述每个命名缓存的属性,并且所有双引号均替换为 &quot;。有关角色配置设置引用的信息,请参阅 角色中缓存角色的配置设置 (ServiceConfiguration.cscfg)

缓存客户端是任何访问 缓存的应用程序代码。在代码中,每个缓存客户端均与一个 DataCacheFactory 对象相关联。该工厂返回一个用于访问缓存的 DataCache 对象。可以从应用程序或 web.config 配置文件加载缓存客户端的实际设置。

以下示例演示了用于设置配置文件中名为 defaultdataCacheClient 节的相关各节。这特定于基于角色的角色中缓存。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="dataCacheClients" type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" />
  </configSections>
  <dataCacheClients>
    <tracing sinkType="DiagnosticSink" traceLevel="Error" />
    <dataCacheClient name="default">
      <autoDiscover isEnabled="true" identifier="WebRole1" />
    </dataCacheClient>
  </dataCacheClients>
</configuration>

有关这些客户端配置设置引用的信息,请参阅 角色中缓存客户端的配置设置 (Web.config)。有关演示如何配置基于角色的 角色中缓存 的客户端的操作实例,请参阅 How To:Use Azure Caching(如何:使用 Azure Caching)。

对于Shared Caching,不使用 autoDiscover 元素。Shared Caching需要添加 hostssecurityProperties 元素。这将提供有关共享缓存的位置和用于访问共享缓存的安全权限的信息。

<dataCacheClient name="default">
  <hosts>
    <host name="[CACHENAME].cache.windows.net" cachePort="22233" />
  </hosts>

  <securityProperties mode="Message">
    <messageSecurity 
      authorizationInfo="[SECURITYKEY]">
    </messageSecurity>
  </securityProperties>
</dataCacheClient>

有关如何使用 Shared Caching 配置文件的详细信息,请参阅如何:使用应用程序配置文件配置缓存客户端 (Azure Shared Caching)

另请参阅

显示:
© 2014 Microsoft