Migrar de almacenamiento en caché de AppFabric a 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 describe cómo migrar de Microsoft AppFabric 1.1 para Windows Server a Microsoft Azure Cache. Este tipo de migración de almacenamiento en caché puede tener lugar al mover una aplicación local a Azure.

AppFabric admite clústeres de caché locales que usan sus propios servidores e infraestructura de red. El traslado a Azure se facilita mediante el hecho de que la mayoría de las características y el modelo de programación de AppFabric se comparten con Microsoft Azure Cache.

Plan de migración

Antes de migrar la aplicación habilitada para caché a la nube, revise primero las diferencias entre AppFabric y Microsoft Azure Cache. Si necesita una característica, como la escritura a través, que no está disponible en Microsoft Azure Caché, debe rediseñar esa parte de la solución para pasar correctamente a Azure.

Analizar el clúster de caché de AppFabric

Todas las memorias caché y su configuración pertinente se deben volver a crear en un rol de Azure habilitado para caché. El primer paso consiste en analizar el clúster de caché de AppFabric para comprender la configuración local actual.

  1. En el clúster de caché de AppFabric, abra el símbolo de sistema Administración de almacenamiento en caché de Windows PowerShell.

  2. Ejecute el comando Get-Cache sin ningún parámetro. Aparecerá una lista de las memorias caché con nombre.

  3. Para cada caché enumerada, ejecute el comando Get-CacheConfig . Pase el nombre de caché como argumento a este comando. Registre los valores de configuración de cada memoria caché. A continuación se muestra un ejemplo de los resultados.

    PS C:\Windows\system32> Get-CacheConfig TestCache
    
    CacheName                : TestCache
    TimeToLive               : 20 mins
    CacheType                : Partitioned
    Secondaries              : 0
    MinSecondaries           : 0
    IsExpirable              : True
    EvictionType             : None
    NotificationsEnabled     : True
    WriteBehindEnabled       : False
    WriteBehindInterval      : 300
    WriteBehindRetryInterval : 60
    WriteBehindRetryCount    : -1
    ReadThroughEnabled       : False
    ProviderType             :
    ProviderSettings         : {}
    
  4. Ejecute el comando Get-CacheHost para ver una lista de hosts de caché en el clúster de caché.

  5. Para cada host de caché, ejecute el comando Get-CacheHostConfig . Pase los argumentos necesarios, el nombre del host de caché y el puerto de almacenamiento en caché (normalmente 22233). Registre el parámetro Size de cada host de caché.

  6. Agregue los valores de Size para todos los hosts de caché para determinar el tamaño total del clúster de caché.

Volver a crear el clúster de caché en un proyecto de Cloud Services

Advertencia

No se admite la instalación de AppFabric y el SDK de Azure en la misma máquina de desarrollo. En estos pasos se supone que usa máquinas independientes o que desinstala completamente AppFabric antes de instalar el SDK de Azure.

En Visual Studio crear un servicio en la nube o abrir un servicio en la nube existente. Agregue un Rol de trabajo de caché al servicio en la nube. Para más información, consulte Hospedaje de Azure In-Role Cache en roles dedicados. Este rol proporcionará funcionalidades de almacenamiento en caché para todo el servicio en la nube. En los pasos siguientes se describe cómo volver a crear las memorias caché con nombre.

  1. En Visual Studio, vaya a la ventana Explorador de soluciones.

  2. En la carpeta Roles , haga doble clic en el rol que hospeda el almacenamiento en caché.

  3. En el cuadro de diálogo de propiedades del rol, seleccione la pestaña Almacenamiento en caché.

  4. En Configuración de memoria caché con nombre, modifique primero la memoria caché predeterminada para que la configuración coincida con la de la memoria caché predeterminada del clúster de caché de AppFabric. Luego, use el vínculo Agregar caché con nombre para agregar las memorias cachés adicionales que necesite la solución. En la captura de pantalla siguiente se muestran varias memorias caché con nombre configuradas.

    Caching Properties for Named Caches

  5. Use para crear o volver a usar una cuenta de almacenamiento. Esta cuenta debe usarse en el campo de cuenta de almacenamiento de la pestaña Almacenamiento en caché para las implementaciones en la nube.

En la tabla siguiente se correlaciona la salida de Get-CacheConfig con la configuración de la ventana de almacenamiento en caché.

Configuración get-CacheConfig Configuración de la ventana de almacenamiento en caché

CacheName

Nombre

TimeToLive

Período de vida (min)

Secundarios (0, 1)

Alta disponibilidad (0 = no seleccionado, 1 = seleccionado)

IsExpirable (verdadero, falso)

Tipo de expiración (verdadero = absoluto, falso = ninguno)

EvictionType (ninguno, LRU)

Directiva de expulsión (ninguna, LRU)

NotificationsEnabled (verdadero, falso)

Notificaciones (verdadero = seleccionado, falso = no seleccionado)

Nota

Las configuraciones de almacenamiento en caché de AppFabric que no aparecen aquí no se admiten en Microsoft Azure Caché.

Para configurar el tamaño del clúster de caché, debe comprender la relación entre el tamaño de la máquina virtual y el número de instancias en ejecución de este rol. Para más información, consulte Consideraciones de planeamiento de capacidad para Azure In-Role Cache.

Migrar el código de la aplicación

El último paso es mover el código de aplicación a los proyectos de servicio en la nube. Tenga en cuenta que el espacio de nombres y muchas de las API son iguales. Los pasos siguientes proporcionan instrucciones de migración para cada proyecto que requiere almacenamiento en caché.

  1. En el proyecto Visual Studio, quite primero las referencias a los ensamblados AppFabric.

  2. A continuación, realice una copia de seguridad de las secciones dataCacheClient del archivo web.config o app.config.

  3. Quite dataCacheClient y otras secciones de almacenamiento en caché del archivo web.config o app.config.

  4. A continuación, prepare el proyecto para usar Microsoft Azure Cache. Para más información, consulte Preparación de Visual Studio para usar Azure In-Role Cache.

  5. A continuación, agregue manualmente las secciones dataCacheClient eliminadas al archivo web.config o app.config. En estas secciones se deben realizar los cambios siguientes:

    • Agregue un elemento autoDiscover a cada sección. El atributo identifier debe hacer referencia al nombre del rol que hospeda el almacenamiento en caché.

      <autoDiscover isEnabled="true" identifier="[cache cluster role name]" />
      
    • Quite todos los hosts, host y elementos securityProperties . No se admiten en Microsoft Azure caché.

Consulte también

Conceptos

Migrar de Azure Shared Caching a Caché en rol