Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Escalado ElastiCache
Puede escalar la ElastiCache memoria caché para adaptarla a sus necesidades. Las cachés sin servidor y los clústeres de autodiseño ofrecen varias opciones de escalado.
Escalar ElastiCache sin servidor
ElastiCache Serverless acomoda automáticamente el tráfico de su carga de trabajo a medida que aumenta o disminuye. Para cada caché ElastiCache sin servidor, realiza un seguimiento ElastiCache continuo de la utilización de recursos como la memoria y la CPU red. Cuando alguno de estos recursos está limitado, ElastiCache Serverless amplía su capacidad de ampliación añadiendo un nuevo fragmento y redistribuyendo los datos al nuevo fragmento, sin que la aplicación pierda tiempo de inactividad. Puede supervisar los recursos que consume la memoria caché CloudWatch supervisando la BytesUsedForCache
métrica del almacenamiento de datos en la memoria caché y ElastiCacheProcessingUnits
() ECPU del uso informático.
Establecimiento de límites de escalado para administrar los costes
Puedes elegir configurar un uso máximo tanto en el almacenamiento de datos en caché como en ECPU /segundo para tu caché a fin de controlar los costes de la memoria caché. Si lo hace, se asegurará de que el uso de la memoria caché nunca supere el máximo configurado.
Si establece un escalado máximo, es posible que su aplicación disminuya el rendimiento de la caché cuando esta alcance el máximo. Cuando estableces un máximo de almacenamiento de datos en caché y tu almacenamiento de datos en caché alcanza el máximo, ElastiCache empezará a desalojar los datos de la caché que tengan un Time-To-Live (TTL) establecido, siguiendo la lógica. LRU Si no hay datos que se puedan desalojar, las solicitudes para escribir datos adicionales recibirán un mensaje de error de falta de memoria (OOM). Cuando estableces un máximo de ECPU /segundo y la utilización informática de tu carga de trabajo supera este valor, ElastiCache empezará a limitar las solicitudes.
Si estableces un límite máximo en BytesUsedForCache
oElastiCacheProcessingUnits
, te recomendamos encarecidamente configurar una CloudWatch alarma con un valor inferior al límite máximo para que recibas una notificación cuando la memoria caché esté funcionando cerca de estos límites. Le recomendamos configurar una alarma al 75 % del límite máximo que haya establecido. Consulte la documentación sobre cómo configurar CloudWatch las alarmas.
Escalado previo con Serverless ElastiCache
ElastiCache Escalado previo sin servidor
Con el preescalado, también denominado precalentamiento, puede establecer los límites mínimos admitidos para la memoria caché. ElastiCache Puede establecer estos mínimos para las unidades de ElastiCache procesamiento (ECPUs) por segundo o para el almacenamiento de datos. Esto puede resultar útil para prepararse para los eventos de escalado previstos. Por ejemplo, si una empresa de videojuegos prevé multiplicar por cinco el número de inicios de sesión en el primer minuto de lanzamiento de su nuevo juego, puede preparar su caché para este importante aumento de uso.
Puede realizar el escalado previo mediante la ElastiCache consolaCLI, o. API ElastiCache Serverless actualiza los ECPUs /segundo disponibles en la memoria caché en 60 minutos y envía una notificación de evento cuando se completa la actualización del límite mínimo.
Funcionamiento del escalado previo
Cuando se alcance el límite mínimoECPUs/second or data storage is updated via the console, CLI, or API, that new limit is available within 1 hour. ElastiCache Serverless supports 30K ECPUs/second on an empty cache, and up to 90K ECPUs/sec when using the Read from Replica feature. ElastiCache Serverless for Valkey 8.0 can double the supported requests per second (RPS) every 2-3 minutes, reaching 5M RPS per cache from zero in under 13 minutes, with consistent sub-millisecond p50 read latency. If you anticipate that an upcoming scaling event might exceed this rate, then we recommend setting the minimum ECPUs/second to the peak ECPUs/sec, al menos 60 minutos antes del pico del evento. De lo contrario, es posible que la aplicación experimente una latencia elevada y se limiten las solicitudes.
Cuando se complete la actualización del límite mínimo, ElastiCache Serverless empezará a calcularte el nuevo mínimo ECPUs por segundo o el nuevo almacenamiento mínimo. Esto se realiza incluso si la aplicación no ejecuta las solicitudes en la caché o si el uso del almacenamiento de datos es inferior al mínimo. Al reducir el límite mínimo con respecto a su configuración actual, la actualización es inmediata, por lo que ElastiCache Serverless empezará a medir el nuevo límite mínimo de forma inmediata.
nota
Cuando estableces un límite de uso mínimo, se te cobrará por ese límite incluso si tu uso real es inferior al límite de uso mínimo. ECPUo el uso de almacenamiento de datos que supere el límite de uso mínimo se cobrará la tarifa normal. Por ejemplo, si estableces un límite de uso mínimo de 100 000 ECPUs €/segundo, se te cobrará al menos 1,224$ por hora (utilizando ECPU los precios en us-east-1), incluso si tu uso es inferior al mínimo establecido.
ElastiCache Serverless admite la escala mínima solicitada a nivel agregado en la memoria caché. ElastiCache Serverless también admite un máximo de 30 K ECPUs/second per slot (90K ECPUs/second cuando se usa Read from Replica READONLY (mediante conexiones). Como práctica recomendada, la aplicación debe garantizar que la distribución de claves en las OSS ranuras de Valkey o Redis y el tráfico entre las claves sean lo más uniformes posible.
Establecer límites de escalado mediante la consola y AWS CLI
Establecer límites de escalado mediante la AWS consola
Inicie sesión en AWS Management Console y abra la ElastiCache consola en https://console.aws.amazon.com/elasticache/
. En el panel de navegación, elija el motor que se ejecuta en la memoria caché que desea modificar.
Aparecerá una lista de las cachés que ejecutan el motor elegido.
Elija la caché que desee modificar seleccionando el botón de opción (a la izquierda del nombre de la caché).
Elija Actions (Acciones) y después Modify (Modificar).
En Límites de uso, establezca los límites de Memoria o Computación adecuados.
Haga clic en Vista previa de los cambios y seleccione Guardar los cambios.
Establezca los límites de escalado mediante el AWS CLI
Para cambiar los límites de escala mediante elCLI, utilice el modify-serverless-cacheAPI.
Linux:
aws elasticache modify-serverless-cache --serverless-cache-name <cache name> \ --cache-usage-limits 'DataStorage={Minimum=10,Maximum=100,Unit=GB}, ECPUPerSecond={Minimum=1000,Maximum=100000}'
Windows:
aws elasticache modify-serverless-cache --serverless-cache-name <cache name> ^ --cache-usage-limits 'DataStorage={Minimum=10,Maximum=100,Unit=GB}, ECPUPerSecond={Minimum=1000,Maximum=100000}'
Eliminar los límites de escala mediante el CLI
Para eliminar los límites de escala medianteCLI, defina los parámetros de límite mínimo y máximo en 0.
Linux:
aws elasticache modify-serverless-cache --serverless-cache-name <cache name> \ --cache-usage-limits 'DataStorage={Minimum=0,Maximum=0,Unit=GB}, ECPUPerSecond={Minimum=0,Maximum=0}'
Windows:
aws elasticache modify-serverless-cache --serverless-cache-name <cache name> ^ --cache-usage-limits 'DataStorage={Minimum=0,Maximum=0,Unit=GB}, ECPUPerSecond={Minimum=0,Maximum=0}'