Compartir vía


Administración de memorias caché

Una vez que el clúster de caché de Microsoft AppFabric 1.1 para Windows Server está en ejecución, el enfoque pasa a la administración de las memorias caché individuales en el clúster de caché. En esta sección se proporcionan ejemplos de cómo usar los comandos de Windows PowerShell para llevar a cabo funciones habituales de administración de caché. Para ver una lista exhaustiva de comandos de administración de caché, vea Uso de Windows PowerShell con el almacenamiento en caché de AppFabric.

Crear una memoria caché nueva

El siguiente ejemplo usa el comando New-Cache para crear una nueva memoria caché denominada Cache1. Para todos los valores de configuración de caché se usan valores predeterminados.

New-Cache Cache1

En el siguiente ejemplo se crea una nueva memoria caché denominada Cache2. En este ejemplo se establece el parámetro Secondaries como 1, lo cual habilita la alta disponibilidad para esta memoria caché. Tenga en cuenta que esto requiere que todos los hosts de caché ejecuten las ediciones Enterprise o Datacenter de Windows Server. En este ejemplo también se habilitan las notificaciones configurando el parámetro NotificationsEnabled en "true". Para obtener más información acerca de estas características de Almacenamiento en caché de AppFabric, consulte Conceptos de almacenamiento en caché.

New-Cache Cache2 -Secondaries 1 -NotificationsEnabled "true"

Tenga en cuenta que los nombres de caché normalmente distinguen entre mayúsculas y minúsculas. La excepción a esta regla es cuando el almacén de configuración de caché usa SQL Server con una base de datos que usa una intercalación que no distinga entre mayúsculas y minúsculas.

Hay un límite de 128 cachés con nombre. Si requiere más de 128 cachés, las aplicaciones cliente podrían considerar el uso de regiones. Una aplicación cliente puede crear una región con el método CreateRegion de la clase DataCache. Si tiene varias regiones en una única memoria caché, las claves de caché que tengan los mismos nombres en diferentes regiones seguirán siendo únicas. Esto afecta al diseño de las aplicaciones. En consecuencia, es importante comunicar este límite de caché a los equipos de desarrollo.

Lista de cachés y regiones

El comando Get-Cache muestra una lista de todas las memorias caché en el clúster de caché y sus regiones.

Get-Cache

En el clúster de caché activo, AppFabric crea regiones predeterminadas. Según crece la memoria caché, el número de estas regiones predeterminadas también lo hace. Las aplicaciones también pueden crear sus propias regiones. Si únicamente está interesado en ver los nombres de caché sin la información de región, puede establecer el parámetro MaxRegions en 0. En el siguiente ejemplo se demuestra esta técnica.

Get-Cache -MaxRegions 0

También puede ver información de caché acerca de un host de caché específico. Aunque se puede distribuir una única caché entre varios hosts, las regiones de dicha caché pueden diferir de un hosts a otro. El siguiente comando muestra toda la información de caché para un host de caché denominado CacheServer1 con un puerto de caché 22233. En este ejemplo se limita MaxRegionsPerCache a 10.

Get-Cache -HostName CacheServer1 -CachePort 22233 -MaxRegionsPerCache 10

Aunque Get-Cache muestra información de región, también puede ver información de región con el comando Get-CacheRegion. El siguiente comando muestra 10 regiones por host de caché en el clúster.

Get-CacheRegion -MaxRegionsPerHost 10

Quitar una caché

El comando Remove-Cache quita una memoria caché del clúster de caché.

Remove-Cache Cache1

Ver los valores de configuración de la memoria caché

Para ver la configuración actual para una memoria caché, use el comando Get-CacheConfig.

Get-CacheConfig Cache1

En el ejemplo anterior, el comando Get-CacheConfig muestra los valores de configuración de la memoria caché para Cache1. A continuación se proporciona un ejemplo de la salida de este comando.

CacheName            : Cache1
TimeToLive           : 10 mins
CacheType            : Partitioned
Secondaries          : 0
IsExpirable          : True
EvictionType         : LRU
NotificationsEnabled : False

En la siguiente tabla se proporciona más información acerca de cada uno de estos valores de configuración.

Opción Descripción

CacheName

Nombre de la memoria caché.

TimeToLive

Tiempo predeterminado que residen los elementos en la memoria caché antes de expirar.

CacheType

Tipo de caché. Siempre es Partitioned.

Secondaries

El valor 1 indica que la memoria caché usa la característica de alta disponibilidad.

IsExpirable

Indica si los objetos de la memoria caché pueden expirar.

EvictionType

Especifica el tipo de expulsión Usados menos recientemente (LRU) o None.

NotificationsEnabled

Indica si las notificaciones están habilitadas para esta memoria caché.

Para obtener más información acerca de estas características de la memoria caché, vea Caducidad y expulsión, Alta disponibilidad y Notificaciones de caché.

Cambiar los valores de configuración de la memoria caché

En ocasiones, es posible que desee cambiar los valores de configuración de una caché existente. Existen dos procesos disponibles:

  • Quitar la memoria caché con el comando Remove-Cache y volver a crear la memoria caché con la configuración requerida con el comando New-Cache.

  • Usar el comando Set-CacheConfig.

Por ejemplo, en el ejemplo anterior, un desarrollador decide usar notificaciones de caché para la memoria caché Cache1. Aunque cambie su código para usar notificaciones, la aplicación fallará si las notificaciones no están habilitadas para la memoria caché Cache1. Puede decidir quitar y volver a crear la memoria caché con la configuración deseada.

Remove-Cache Cache1

El ejemplo anterior quita Cache1. Deberá esperar varios minutos mientras se elimina la memoria caché antes de volver a crearla. Si trata de volver a crear la memoria caché demasiado pronto, recibirá un mensaje que le indica que la eliminación de la memoria caché está en curso. Después de esta pausa, podrá volver a crear la memoria caché, especificando que las notificaciones están habilitadas.

New-Cache Cache1 -NotificationsEnabled True

Al usar este método, debe mirar atentamente los valores de configuración con el comando Get-CacheConfig. También deberá especificar los valores de configuración que no sean predeterminados para la memoria caché vuelta a crear además de los valores que desee cambiar.

También puede usar el comando Set-CacheConfig. La ventaja de este comando es que conserva los demás valores de configuración y solo cambia los que especifique. Este comando requiere detener el clúster de caché.

Stop-CacheCluster 
Set-CacheConfig Cache1 -NotificationsEnabled True 
Start-CacheCluster

Con ambas técnicas se quitarán todos los datos de la memoria caché y esta dejará de estar disponible durante un breve lapso de tiempo. En consecuencia, estos cambios deben realizarse durante una ventana de mantenimiento. Si es posible, las aplicaciones deben diseñarse para su ejecución cuando la memoria caché esté inactiva durante breves períodos de tiempo. Tenga en cuenta además que, para algunos cambios tales como NotificationsEnabled, las aplicaciones cliente no reflejan los cambios de configuración de manera automática, sino que deben crear un nuevo DataCacheFactory y llamar a GetCache en la memoria caché para reflejar los cambios en la configuración de la memoria caché. Un sencillo modo de hacerlo es reiniciar las aplicaciones cliente.

Vea también

Conceptos

Tareas habituales de administración de clústeres de caché (Almacenamiento en caché de Windows Server AppFabric)

  2012-03-05