En esta página, se presenta el servicio de Memorystore para Memcached, que incluye casos prácticos, conceptos clave y las ventajas de usar Memcached.
Memorystore para Memcached es un servicio de Memcached de alta escalabilidad y completamente administrado para Google Cloud. El servicio se compila en Memcached de código abierto y cumple con el protocolo binario y ASCII. Se puede acceder a este servicio mediante el uso de bibliotecas cliente estándar de OSS Memcached en todos los lenguajes, lo que facilita la realización de migraciones lift-and-shift de aplicaciones existentes con pocos cambios de código o ninguno.
Las aplicaciones web escalables y de alto rendimiento con frecuencia usan un almacén de datos distribuido en memoria para lograr una latencia baja y un rendimiento alto. Memcached es un popular almacén de clave-valor distribuido en memoria que se usa para compilar esas aplicaciones. Algunos de los casos de uso comunes de Memcached incluyen el almacenamiento en caché de los datos de referencia, el almacenamiento en caché de consultas de la base de datos y, en algunos casos, usarlo como un almacén de sesión.
Para obtener más información sobre Memcached, consulta la página acerca de Memcached de software de código abierto (OSS).
Memorystore también facilita la implementación de un servicio de Memcached. Tú implementas Memorystore y Google administra el servicio para que puedas enfocarte en tu aplicación. Memorystore te brinda todos los beneficios de Memcached sin la sobrecarga de instalarlo y administrarlo.
Conceptos clave
Memorystore para Memcached permite crear un clúster de Memcached completamente administrado. Antes de usar el servicio, es importante comprender algunos conceptos y términos clave.
La instancia de Memcached representa una instancia de un clúster de Memcached. Una instancia puede estar compuesta por un solo nodo o una colección de nodos. Todos los nodos de una instancia deben tener la misma memoria por nodo y la misma cantidad de CPU virtuales. Las claves escritas en tu instancia se dividen en todos los nodos del clúster y no se replican.
El nodo Memcached es la unidad fundamental de una instancia de Memcached. Antes de crear un clúster, es importante determinar la cantidad de nodos, la memoria por nodo y la cantidad de CPU virtuales por nodo que se usará para crear el clúster de Memcached. La configuración del nodo y la cantidad de nodos dependen del tamaño del conjunto de datos, la tolerancia a la pérdida de claves y las características de la carga de trabajo. Cada nodo tiene una dirección IP y un puerto. Puedes obtener la lista de direcciones IP de todos los nodos de forma manual o mediante el servicio de descubrimiento automático.
Una ubicación te permite especificar la región en la que implementas tu instancia y cómo se distribuyen los nodos en las zonas dentro de la región.
Cuando creas una instancia de Memorystore, primero debes elegir la región en la que deseas implementarla. La elección de la región es un punto importante. Debes implementar la instancia en la misma región en la que se implementa la aplicación que accede a la instancia de Memorystore. No se admite el acceso a una instancia de Memorystore desde un recurso de Google Cloud en una región diferente.
Todos los nodos de Memorystore se distribuyen dentro de la región que designes. Dentro de la región, tienes la opción de distribuir automáticamente los nodos en todas las zonas o seleccionar las zonas específicas donde se deben ubicar los nodos. Te recomendamos distribuir los nodos de forma automática para permitir que Memorystore distribuya los nodos de forma óptima en zonas disponibles. Debes evitar el aprovisionamiento de todos los nodos en una sola zona para mejorar la tolerancia a errores de la aplicación.
La red de VPC autorizada designa la red de VPC de Google que usa tu instancia. La red autorizada se configura durante la creación de la instancia y no se puede modificar más adelante. Se debe establecer una conexión de acceso a servicios privados en una red de VPC para que funcione con Memorystore para Memcached. Solo los recursos y los usuarios que tienen acceso a la red de VPC autorizada pueden acceder a la instancia.
Se debe establecer una conexión de acceso a servicios privados para la red de VPC autorizada que usa la instancia de Memcached antes de que puedas crear la instancia de Memcached. Te recomendamos comunicarte con el equipo de redes y seguridad para configurar la conexión antes de crear la instancia. Una conexión de acceso a servicios privados permite crear instancias con direcciones IP internas y brinda a los administradores control sobre el rango de direcciones IP internas que usan las instancias de Memorystore. Para obtener más detalles, consulta Herramientas de redes.
Una configuración permiten establecer una configuración específica de Memcached durante la creación de la instancia y también permiten cambiar la configuración durante el tiempo de ejecución. Para obtener una lista de las configuraciones compatibles, consulta Configuración de Memcache.
El servicio de descubrimiento automático proporciona una manera programática para que los clientes de Memcached descubran todos los nodos en el clúster. Los clientes pueden consultar de manera periódica el extremo de descubrimiento para obtener la lista de direcciones IP del nodo. La lista generalmente se utiliza para distribuir las claves en todos los nodos mediante el hashing coherente. El uso del servicio de descubrimiento automático es particularmente útil para entornos que escalan de forma periódica la cantidad de nodos en una instancia. Para obtener más información, consulta Servicio de descubrimiento automático.
En la siguiente tabla, se describen las distintas funciones y características disponibles de Memorystore para Memcached:
Características y funciones | Descripción |
---|---|
Versiones de Memcached | Actualmente, el servicio es compatible con las versiones 1.5.16 y 1.6.15. Para obtener más información, consulta Versiones compatibles. |
Tamaño de las instancias | Una instancia puede tener un máximo de 20 nodos. Todos los nodos tienen la misma configuración. Un nodo puede tener un mínimo de 1 CPU virtual y un máximo de 32 CPU virtuales. El mínimo de memoria por nodo es de 1 GB y la memoria máxima admitida por nodo es de 256 GB. La memoria se puede especificar en incrementos de 1 GB. El tamaño máximo de una instancia es de 5 TB. |
Escalamiento de instancias | Puedes escalar horizontalmente tu instancia mediante el aumento o la disminución de la cantidad de nodos. Para escalar verticalmente tus nodos, se debe volver a crear la instancia. |
Configuraciones de Memcached | Puedes configurar la instancia para tu carga de trabajo específica. Para obtener una lista de configuraciones, consulta las opciones de configuración de Memcached. |
Seguridad y control de acceso |
|
Plataformas compatibles | Se puede acceder a Memorystore para Memcached desde las siguientes plataformas. Plataformas compatibles:
|
Bibliotecas cliente | Se admiten todas las bibliotecas cliente memcached estándar en todos los lenguajes. |
Servicio de descubrimiento automático |
Habilita la detección programática de nodos en una instancia. Actualmente, la asistencia para la detección automática está disponible en los siguientes clientes:
También puedes modificar cualquier cliente de Memcached existente para agregar compatibilidad con la detección automática. Para obtener más detalles, consulta Servicio de descubrimiento automático. El servicio de descubrimiento automático también es compatible con la mayoría de los clientes que admiten la detección automática de AWS ElastiCache. |
Supervisión | Memorystore para Memcached proporciona métricas y paneles en la consola de Google Cloud para supervisar la instancia. Para obtener más detalles, consulta Supervisa instancias de Memcached. |
¿Qué sigue?
- Crea una instancia de Memcached
- Configura las herramientas de redes de Memorystore para Memcached.
- Establece una conexión de acceso privado a servicios.