Opciones de configuración de proveedor de caché de resultados de ASP.NET en Caché en rol de Azure
Importante
Microsoft recomienda todos los nuevos desarrollos que usen Azure Redis Cache. Para obtener documentación actual e instrucciones sobre cómo elegir una oferta de Azure Cache, consulte ¿Qué oferta de Azure Cache es adecuada para mí?
En este tema se tratan los valores de configuración del proveedor de caché de salida de Azure para ASP.NET. Esta configuración se especifica en la sección providers del elemento outputCache en el archivo web.config.
Opciones de configuración de la caché de resultados
Atributo | Descripción |
---|---|
name (obligatorio) |
Nombre "descriptivo" del proveedor utilizado por el elemento outputCache para hacer referencia al proveedor. |
type (obligatorio) |
Cadena de tipo .NET Framework para el proveedor. Vea la nota siguiente sobre el valor requerido. |
cacheName (obligatorio) |
Nombre de la caché de Azure. Debe establecerse en |
dataCacheClientName (opcional) |
Nombre de la sección dataCacheClient que se va a usar desde la sección de configuración dataCacheClients . Este atributo solo es necesario si se especifican varias secciones dataCacheClient en el archivo web.config. De forma predeterminada, el proveedor usará la sección dataCacheClient denominada |
applicationName (opcional) |
Valor de cadena que usa el proveedor al crear claves de caché para almacenar los datos de la caché de resultados. El valor predeterminado es una cadena vacía. Cuando este atributo no se establece, el proveedor usa el valor de HttpRuntime.AppDomainAppId como parte de las claves de caché que usa internamente. A diferencia de la característica de estado de sesión, no querrá compartir los datos de la caché de resultados entre las distintas aplicaciones ASP.NET (por ejemplo, /contoso y /adventureworks no pueden compartir los datos de la caché de resultados). En su lugar, asegúrese de que las instancias físicas diferentes de la misma aplicación tengan acceso todas a los mismos datos de la caché de resultados. Hay dos formas diferentes de lograrlo:
|
retryInterval (opcional) |
Intervalo de tiempo durante el cual se debe esperar entre reintentos si se produce un error al comunicarse con la caché. El formato de cadena que se usa con este valor es |
retryCount (opcional) |
Valor entero que le indica al proveedor el número de reintentos en caso de error en la comunicación con la caché. Tenga en cuenta que no es posible recuperar todas las operaciones. El valor predeterminado son tres reintentos. El proveedor se suspende para el tiempo de reintentos configurado entre cada intento de reintento. |
Nota
El atributo type debe establecerse en “Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache”
.
Ejemplo
<configuration>
<configSections>
<section name="dataCacheClients"
type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core"
allowLocation="true" allowDefinition="Everywhere" />
<section name="cacheDiagnostics"
type="Microsoft.ApplicationServer.Caching.AzureCommon.DiagnosticsConfigurationSection, Microsoft.ApplicationServer.Caching.AzureCommon"
allowLocation="true" allowDefinition="Everywhere" />
</configSections>
<system.web>
<!-- Azure Caching output caching provider -->
<caching>
<outputCache defaultProvider="AFCacheOutputCacheProvider">
<providers>
<add name="AFCacheOutputCacheProvider"
type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache"
cacheName="default"
dataCacheClientName="default"
applicationName="AFCacheOutputCache" />
</providers>
</outputCache>
</caching>
</system.web>
<dataCacheClients>
<dataCacheClient name="default">
<autoDiscover isEnabled="true" identifier="CacheWorkerRole1" />
</dataCacheClient>
</dataCacheClients>
<cacheDiagnostics>
<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" />
</cacheDiagnostics>
</configuration>