Junior — Middle
Explique le principe de fonctionnement du mécanisme d'expiration glissante du cache et son objectif
sobes.tech IA
Réponse de l'IA
Механизм Cache Sliding Expiration (скользящее истечение кэша) используется для управления временем жизни кэшированных данных. В отличие от абсолютного истечения, где элемент удаляется из кэша через фиксированное время после добавления, Sliding Expiration обновляет время жизни элемента каждый раз, когда к нему происходит обращение.
То есть, если элемент в кэше не используется в течение заданного интервала времени, он удаляется. Но если к элементу регулярно обращаются, время его жизни продлевается, и он остается в кэше.
Это полезно для данных, которые должны оставаться в кэше, пока они активно используются, и автоматически удаляться, когда становятся неактуальными.
Пример в C# с использованием MemoryCache:
var cache = MemoryCache.Default;
var policy = new CacheItemPolicy
{
SlidingExpiration = TimeSpan.FromMinutes(10) // элемент удалится, если к нему не обращались 10 минут
};
cache.Set("key", "value", policy);
// При каждом обращении к cache.Get("key") время жизни элемента обновляется