VENTAS: 1-800-867-1389

Opciones de configuración del cliente de Caché en rol (Web.config)

Actualizado: mayo de 2015

noteNota
Si quiere que le guiemos a la hora de elegir la oferta de Caché de Azure que mejor se adapta a su aplicación, consulte ¿Cuál es la oferta de Caché de Azure más adecuada para mí?.

En este tema se describen los requisitos para admitir Caché en rol en un archivo de configuración web.config o app.config de .NET Framework. También se describen las opciones de configuración disponibles para los clientes de caché. Las opciones que se describen en este tema solo se requieren para los clientes de caché, no son necesarias para los roles que hospedan Caché en rol.

TipSugerencia
Cuando se usa el paquete NuGet para Caché en rol, este modifica automáticamente el archivo de configuración. Sin embargo, puede usar este tema para configurar clientes de Caché en rol sin usar NuGet. Además, puede usar esta información para personalizar aún más la configuración del cliente de caché que inserta NuGet.

En las secciones siguientes se trata este tema.

En el ejemplo siguiente se muestran las secciones de un archivo web.config o app.config pertinentes para Caché en rol. En este ejemplo, el cliente de caché default accede a las cachés hospedadas por el rol CacheWorkerRole1 y la caché local está habilitada.

<?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" />
    <section name="cacheDiagnostics" type="Microsoft.ApplicationServer.Caching.AzureCommon.DiagnosticsConfigurationSection, Microsoft.ApplicationServer.Caching.AzureCommon" allowLocation="true" allowDefinition="Everywhere" />
  </configSections>
  <dataCacheClients>
    <dataCacheClient name="default">
      <autoDiscover isEnabled="true" identifier="CacheWorkerRole1" />
      <localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />
    </dataCacheClient>
  </dataCacheClients>
  <cacheDiagnostics>
    <crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" />
  </cacheDiagnostics>
</configuration>

Se deben agregar los dos elementos de section con nombre siguientes a la lista de secciones en el elemento configSections.

 

Nombre Descripción

dataCacheClients

Define el elemento dataCacheClients del archivo de configuración. Esta sección especifica las opciones de todas las configuraciones del cliente de caché.

cacheDiagnostics

Define el elemento cacheDiagnostics del archivo de configuración.

El siguiente ejemplo muestra cómo definir estas secciones.

    <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" />

Cada elemento dataCacheClients contiene uno o varios elementos dataCacheClient con nombre. El elemento dataCacheClients no tiene ningún atributo, La capacidad de tener varias secciones de configuración del cliente de caché permite que las aplicaciones usen distintas configuraciones con distintos tipos de datos en caché.

Cada elemento dataCacheClients contiene uno o varios elementos dataCacheClient con nombre. El código de la aplicación carga la configuración para un cliente de caché mediante referencia al nombre de la sección dataCacheClient asociada.

El elemento dataCacheClients no tiene ningún atributo, pero los elementos dataCacheClient secundarios tienen varios atributos disponibles. Estos atributos se describen en la tabla siguiente.

 

Atributo Descripción

Name

Nombre de la configuración del cliente de caché.

isCompressionEnabled

Habilita o deshabilita la compresión. Los posibles valores incluyen: true o false. El valor predeterminado es false (deshabilitado).

useConnectionPool

Habilita o deshabilita el grupo de conexiones. Los valores posibles incluyen true o false. El valor predeterminado es true (habilitado).

maxConnectionsToServer

Cuando useConnectionPool está establecido en true, este atributo especifica la cantidad de conexiones del grupo de conexiones para esta configuración del cliente de caché. Cuando useConnectionPool está establecido en false, este atributo especifica la cantidad de conexiones que se usarán para cada objeto DataCacheFactory en el código.

En las secciones siguientes se describen los elementos secundarios disponibles en cada elemento dataCacheClient.

El elemento autoDiscover asiste a los clientes de caché con la conexión automática a un clúster de caché de destino. Un rol dentro de la misma implementación del servicio en la nube debe hospedar a este clúster de caché.

En la tabla siguiente se describen los atributos disponibles para el elemento autoDiscover.

 

Atributo Descripción

isEnabled

Se establece en true o false para habilitar o deshabilitar la conexión automática local al rol que hospeda Caché en rol.

identifier

Nombre del rol en la misma implementación del servicio en la nube que hospeda Caché en rol.

<autoDiscover isEnabled="true" identifier="CacheWorkerRole1" />

El elemento localCache controla el uso de la memoria caché local. La memoria caché local no está habilitada de forma predeterminada. Cuando está habilitada, los elementos recuperados del clúster de caché se almacenan localmente en la memoria en el equipo cliente. Esto mejora el rendimiento de las posteriores solicitudes GET, pero puede provocar incoherencias de datos entre la versión en caché local y el elemento real en el clúster de caché. Para obtener más información, vea Caché local en Caché en rol de Azure.

En la tabla siguiente se describen los atributos disponibles para el elemento localCache.

 

Atributo Descripción

isEnabled

Se establece en true o false para habilitar o deshabilitar la caché local.

sync

Determina cómo se invalida la caché local. Los valores posibles son TimeoutBased y NotificationBased.

objectCount

Número máximo de objetos que se almacenan en la memoria caché local. El valor predeterminado es 10000.

ttlValue

Número de segundos que los objetos permanecen en la memoria caché local. El valor predeterminado es 300 segundos.

noteNota
Las notificaciones son una característica de Caché en rol admitida solo en las cachés hospedadas en roles de Azure. Estas cachés deben configurarse para habilitar las notificaciones.

<localCache isEnabled="true" sync="TimeoutBased" objectCount="100000" ttlValue="300" />

En la tabla siguiente se describen los atributos disponibles para el elemento clientNotification. Este elemento es responsable de controlar el comportamiento de las notificaciones para el cliente de caché.

 

Atributo Descripción

pollInterval

Cantidad de segundos entre los intentos de sondeo. El sondeo se usa para comprobar las notificaciones en el clúster de caché. El valor predeterminado es 300 segundos.

maxQueueLength

Cantidad máxima de notificaciones que se colocarán en la cola para este cliente de caché entre los intentos de sondeo. El valor predeterminado es de 10000 notificaciones.

<clientNotification pollInterval="60" maxQueueLength="10000"/>

En la tabla siguiente se describen los atributos disponibles para el elemento serializationProperties. Este elemento admite la opción de serialización integrada o personalizada para los elementos en caché. Para obtener más información, vea Serialización en caché en rol de Azure.

 

Atributo Descripción

serializer

Determina el tipo de serialización de los elementos en caché. Los valores posibles son NetDataContractSerializer, BinaryFormatter y CustomSerializer. El valor predeterminado es NetDataContractSerializer.

Esta sección configura algunas de las opciones de configuración de Caché en rol. Para obtener más información sobre el diagnóstico, vea Diagnóstico y solución de problemas de Caché en rol de Azure.

En las secciones siguientes se describen los elementos secundarios disponibles en cada elemento cacheDiagnostics.

El elemento crashDump controla el tipo de volcados de memoria que se recopilan para esta aplicación. Los volcados de memoria de Caché en rol están diseñados principalmente para diagnosticar problemas en los equipos del clúster de caché. Por este motivo, los archivos de configuración del cliente deben desactivar la generación de volcados de memoria. Para hacerlo, establezca el atributo dumpLevel en Off.

Cuando se habilitan los volcados de memoria, el almacén local de caché y el almacén de diagnósticos deben ajustarse en ServiceDefinition.csdef de modo que el tamaño siempre sea mayor que la suma de la cuota del almacenamiento de volcado y la cuota de almacenamiento de registros que se configura en CacheSettings.xml (los valores predeterminados son 1000 MB).

En la tabla siguiente se describen los atributos disponibles para el elemento crashDump.

 

Atributo Descripción

dumpLevel

Los valores posibles incluyen Off, Mini y Full.

dumpStorageQuotaInMB

Cantidad máxima de almacenamiento para asignar a los volcados de memoria.

scheduledTransferPeriodInMinutes

Cantidad de minutos entre las transferencias de los volcados de memoria al almacén de diagnósticos.

<crashDump dumpLevel="Off" dumpStorageQuotaInMB="100" scheduledTransferPeriodInMinutes="5" />

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios
Mostrar:
© 2015 Microsoft