Tous les produits
Search
Centre de documentation

Tair (Redis® OSS-Compatible):Periodically delete expired keys with OOS

Dernière mise à jour :Aug 08, 2026

Tair (Redis OSS-compatible) supprime progressivement les données expirées, ce qui entraîne une occupation de la mémoire même après l'expiration. Configurez une tâche Scheduled O&M dans CloudOps Orchestration Service (OOS) pour analyser (SCAN) toutes les clés pendant les heures creuses, supprimer immédiatement les clés expirées et libérer de la mémoire.

Contexte

Afin de garantir les performances en lecture et en écriture, les instances Tair (Redis OSS-compatible) utilisent une logique de suppression asynchrone. Lorsqu'une donnée expire, l'instance ne la supprime pas immédiatement. Les clés expirées sont plutôt retirées progressivement via une suppression active (un processus d'arrière-plan qui analyse et supprime périodiquement une partie des clés expirées) et une suppression passive (une clé est supprimée lorsqu'un client tente d'y accéder). Dans les cas extrêmes, lorsqu'un grand nombre de clés expirent simultanément, la récupération de la mémoire peut prendre un temps considérable.

Utilisez le service OOS gratuit pour appeler périodiquement l'API FlushExpireKeys, qui analyse toutes les clés et supprime immédiatement celles qui ont expiré.

Important

La commande SCAN analyse l'ensemble des données et augmente la charge CPU de l'instance. Exécutez cette tâche pendant les heures creuses.

Prérequis

Créez un rôle RAM pour permettre au service OOS d'accéder au service Tair (Redis OSS-compatible). Pour plus d'informations, consultez la rubrique Configurer et accorder des autorisations à un rôle RAM pour OOS.

  • Attribuez la stratégie système AliyunKvstoreFullAccess au rôle, ce qui lui permet de gérer toutes les ressources Tair (Redis OSS-compatible).

  • Vous pouvez également créer une stratégie personnalisée basée sur le principe du moindre privilège. Cette stratégie autorise OOS à appeler uniquement les API DescribeInstances et FlushExpireKeys de Tair (Redis OSS-compatible), limitant ainsi les permissions du rôle à cette tâche spécifique.

    Exemple de stratégie de rôle RAM :

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "kvstore:DescribeInstances",
                    "kvstore:FlushExpireKeys"
                ],
                "Resource": "*"
            }
        ]
    }

Procédure

  1. Accédez à la console OOS.

  2. Dans le volet de navigation de gauche, sélectionnez Automated Task > Scheduled O&M.

  3. Cliquez sur Create.

  4. Configurez la tâche Scheduled O&M.

    Remarque

    Cette rubrique décrit uniquement les paramètres clés. Pour plus de détails sur les autres paramètres, consultez la documentation relative à CloudOps Orchestration Service.

    Paramètres de planification

    Dans cet exemple, sélectionnez Executed Periodically pour exécuter la tâche tous les jours à 04:00 et 16:00.

    Pour Repeat Cycle, sélectionnez cron expression et configurez les champs comme suit : définissez Minute sur 0, Hour sur 4,16, Day-of-month sur ?, Month sur * et Day-of-week sur *. Pour Time Zone, sélectionnez (GMT+08:00) Asia/Shanghai. Définissez Effective Time sur 2025-07-23 00:00:00.

    Définissez End Time sur 2026-01-01 00:00:00. La tâche Scheduled O&M cessera de s'exécuter à cette date.

    Sélectionner un modèle

    Dans la section Public Templates, recherchez et sélectionnez le modèle ACS-Redis-FlushExpireKeys.

    Configurer les paramètres du modèle

    1. Sélectionnez la région de votre instance, puis choisissez l'instance cible.

    2. Pour Permission Source For Execution, sélectionnez le rôle RAM que vous avez créé dans la section Prérequis.

    Paramètres d'exécution (facultatif)

    Conservez les paramètres par défaut dans cet onglet.

  5. Cliquez sur Create, puis sur OK dans la boîte de dialogue de confirmation.

    Lorsque le statut Execution Status d'une tâche est défini sur Active, elle s'exécute automatiquement selon les paramètres définis dans Schedule Settings.

Étapes suivantes

Dans la liste des tâches Scheduled O&M, cliquez sur l'Execution ID d'une tâche pour ouvrir sa page de détails. Sur cette page, vous pouvez consulter ou modifier la configuration de la tâche, déclencher immédiatement une exécution et afficher l'historique des exécutions.

Une fois les données expirées supprimées et la mémoire récupérée, vous constaterez une diminution de la métrique Memory Usage de l'instance dans le module Performance Monitoring.

Documentation connexe

  • Vous pouvez également configurer Alert and Event O&M dans OOS. Par exemple, appelez l'API FlushExpireKeys pour supprimer les clés expirées lorsque l'utilisation moyenne de la mémoire atteint 90 %. Le processus de configuration est similaire à celui de cette solution, et le point d'entrée se trouve sous Automated Task > Alert and Event O&M. Pour plus d'informations, consultez la rubrique Créer une tâche O&M basée sur une alerte.

  • Pour en savoir plus sur la manière dont Tair et Redis suppriment les données expirées, consultez la rubrique Comment Tair et Redis purgent-ils les clés expirées ?