Ejecutar su aplicación de Memcache con Azure Managed Cache Service

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í?

Managed Cache Service proporciona compatibilidad con la migración de aplicaciones cliente de Memcache Cloud Services basadas en roles para usar Managed Cache Service proporcionando una corrección de compatibilidad de cliente de Memcache. En este tema se proporcionan instrucciones sobre el uso de esta corrección de compatibilidad para permitir que las aplicaciones cliente de Memcache usen Managed Cache Service.

En esta sección

  • Información general de Memcache

  • Compatibilidad con el protocolo Memcache

  • Correcciones de compatibilidad (shim) de cliente Memcache

  • Procedimiento para implementar la corrección de compatibilidad de cliente para aplicaciones de Azure

Información general de Memcache

Memcache es una solución distribuida de almacenamiento en caché basado en memoria para acelerar las aplicaciones web de gran escala mediante el alivio de presión de la base de datos. Memcache se usa principalmente en los mayores sitios web de Internet y se ha fusionado con otras tecnologías de formas innovadoras.

Azure admite el protocolo Memcache para permitir que los clientes que tengan implementaciones existentes de Memcache migren fácilmente a Azure. Si una aplicación ya usa Memcache, no es necesario reemplazar este código con código nuevo.

Ejecutar Managed Cache Service con Memcache es una mejor opción que, por ejemplo, ejecutar solo Memcache en un rol de trabajo. Esto se debe a que Managed Cache Service ofrece características de valor añadido, como apagado estable, alta disponibilidad, almacenamiento en caché local, notificaciones, coherencia de datos, alta disponibilidad (ALTA disponibilidad) y escalado vertical sencillo y transparente para los clientes, por nombrar algunos. Por ejemplo, el esquema hash del servidor y la administración de particiones en Managed Cache Service con Memcache ayudan a equilibrar la carga y a conservar la coherencia de los datos.

Compatibilidad con el protocolo Memcache

Managed Cache Service admite el protocolo de cable Memcache. Hay dos versiones del protocolo, una versión binaria y una versión de texto.

Un cliente Memcache debería ser compatible con Azure. Managed Cache Service admite casi todas las API que admiten otras implementaciones de Memcache.

Por lo tanto, si un usuario transfiere una aplicación de Memcache a Azure y apunta la aplicación a la implementación Memcache de Azure, debería continuar funcionando tal cual, sin modificaciones adicionales en la aplicación.

Correcciones de compatibilidad (shim) de cliente Memcache

La corrección de compatibilidad de cliente Memcache se instala en el cliente que accede a la caché. En general, se trata del rol de Azure que tiene la aplicación misma. La corrección de compatibilidad de cliente admite la memoria caché local.

La corrección de compatibilidad es una capa de transición. Traduce las llamadas de cliente de Memcache a la API de Managed Cache Service. La corrección de compatibilidad tiene dos partes: un controlador de protocolo Memcache y un cliente Managed Cache Service. La corrección de compatibilidad (la capa de traducción) se instala en el propio cliente, dondequiera que se realicen las llamadas Get y Put a Managed Cache Service API.

Cuando el cliente Memcache se apunta a un localhost, como el servidor Memcache, la instancia local de la corrección de compatibilidad controlará las operaciones de Memcache inicialmente. La corrección de compatibilidad traducirá la operación a una solicitud de API de caché y la enviará al Managed Cache Service.

Procedimiento para implementar la corrección de compatibilidad de cliente para aplicaciones de Azure

Nota

Antes de comenzar, asegúrese de tener el extremo de la caché y la clave de acceso de su caché. Para más información sobre cómo crear una memoria caché, consulte Creación de una caché para Azure Managed Cache Service. Para obtener más información sobre las claves de acceso, consulte Control del acceso mediante claves de acceso.

  1. En el rol que tiene el cliente Memcache, haga clic con el botón secundario en el nombre de rol y seleccione “Agregar referencia de paquetes de biblioteca” para abrir la ventana NuGet.

  2. Busque “Corrección de compatibilidad de Memcache para Caching de Azure”. Instale el paquete NuGet

  3. El paquete creará la tarea de arranque, agregará un extremo interno para memcache_default y lo asignará a 11211, y agregará las secciones dataCacheClients apropiadas a App.config y web.config. Esto se puede cambiar en la pestaña de extremos internos.

  4. Proporcione el punto de conexión de Managed Cache Service en el elemento autoDiscovery y la clave de acceso de authorizationInfo en dataCacheClientSection del App.config o Web.config

  5. Ahora el cliente estará configurado para “apuntar” a la corrección de compatibilidad. Edite la configuración del cliente Memcache y establezca el servidor en “localhost”. También debe definir los números de puerto correctos (el valor predeterminado es 11211).