View a markdown version of this page

Gestion de la mémoire réservée pour Valkey et Redis OSS - Amazon ElastiCache

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion de la mémoire réservée pour Valkey et Redis OSS

Chaque type d'hôte possède une quantité de mémoire dédiée pour Valkey etRedis OSS. Il s'agit de la mémoire annoncée. Le reserved-memory-percent paramètre réserve une partie de cette mémoire à des utilisations autres que les données :

  • Tampons de sortie client sur les répliques

  • Mémoire perdue à cause de la fragmentation

  • Copy-on-write mémoire utilisée par forked bgsave

La maxmemory valeur est égale à la mémoire annoncée moins la réserve. Par exemple, avec 13,5 Go de mémoire annoncée et une réserve de 25 %, cela maxmemory représente environ 10,1 Go.

Important

La reserved-memory-percent valeur par défaut est 25 %. Ne réduisez pas cette valeur. Une réserve inférieure peut entraîner des pertes de données, notamment lors de mises à niveau ou d'autres modifications apportées à votre cluster.

Combien de mémoire réserver

Le reserved-memory-percent paramètre est défini par défaut sur 25 %. Ne réduisez pas cette valeur. Cependant, il existe des situations dans lesquelles vous pouvez bénéficier de l'augmentation de la réserve de mémoire.

Microinstances et petites instances

Les microinstances et les petites instances sont dimensionnées pour une activité légère sans la charge de réplication. Pour améliorer la fiabilité opérationnelle de ces instances pour les charges de travail de production, augmentez la réserve de mémoire à 30 % sur les petites instances et à 50 % sur les micro-instances.

Forcer un bugsave bifurqué ou une synchronisation complète

Lors d'un bgsave bifurqué traditionnel ou d'une synchronisation complète, Valkey l'utilisation de Redis OSS la mémoire peut doubler (ou plus), en fonction de la charge et du modèle du trafic. Si cela ne FreeableMemory suffit pas pour exécuter une opération bifurquée traditionnelle, Amazon passe ElastiCache automatiquement à un mécanisme de sauvegarde sans fork. Ce mécanisme sans fork utilise beaucoup moins de mémoire, mais peut ajouter des latences au client, en particulier pour les éléments très volumineux key/value . Si ces latences ont un impact sur votre cas d'utilisation, augmentez la réserve de mémoire afin de garantir suffisamment de mémoire pour une sauvegarde bifurquée traditionnelle.

Si demandé par le AWS support

Des modèles de trafic ou des exigences inhabituels peuvent entraîner des besoins de mémoire uniques. Augmentez reserved-memory-percent si le AWS support vous le demande.

Configuration de la mémoire réservée

Le reserved-memory-percent paramètre est spécifique à ElastiCache. Il ne fait pas partie du code source ouvert Valkey ou Redis OSS. Pour modifier cette valeur, utilisez un groupe de paramètres personnalisé. Vous ne pouvez pas modifier les groupes de paramètres par défaut.

Si 25 % vous conviennent, aucun changement n'est nécessaire. Pour utiliser une valeur différente, procédez comme suit.

Pour modifier la valeur du pourcentage de mémoire réservée
  1. Exécutez la AWS CLI commande suivante pour créer un groupe de paramètres personnalisé. Configurez la famille en fonction de la version de votre moteur. Pour plus d'informations sur la création de groupes de paramètres, consultezCréation d'un groupe ElastiCache de paramètres.

    aws elasticache create-cache-parameter-group \ --cache-parameter-group-name my-parameter-group \ --description "Custom reserved memory settings" \ --cache-parameter-group-family redis7

    Vous n'avez besoin que d'un seul groupe de paramètres personnalisés par famille de moteurs. La valeur en pourcentage fonctionne de la même manière pour tous les types de nœuds.

  2. Définissez reserved-memory-percent la valeur souhaitée. Pour en savoir plus sur la modification des groupes de paramètres, consultez Modifier un groupe ElastiCache de paramètres.

    aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name my-parameter-group \ --parameter-name-values "ParameterName=reserved-memory-percent, ParameterValue=30"
  3. Appliquez le groupe de paramètres personnalisé à votre cluster ou groupe de réplication.

    Pour modifier un cluster, exécutez la AWS CLI commande suivante. Pour plus d'informations sur la modification des clusters, consultezModifier un ElastiCache cluster.

    aws elasticache modify-cache-cluster \ --cache-cluster-id my-cluster \ --cache-parameter-group-name my-parameter-group \ --apply-immediately

    Pour modifier un groupe de réplication, exécutez la AWS CLI commande suivante. Pour plus d'informations sur la modification des groupes de réplication, consultezModification d'un groupe de réplication.

    aws elasticache modify-replication-group \ --replication-group-id my-replication-group \ --cache-parameter-group-name my-parameter-group \ --apply-immediately