Junior — Middle
Welke methoden of tools hebt u gebruikt om caching in uw projecten te implementeren?
sobes.tech AI
Antwoord van AI
Voor het implementeren van caching in C#-projecten heb ik verschillende benaderingen en tools gebruikt:
- MemoryCache uit de namespace
System.Runtime.Cachingvoor het cachen van gegevens in het geheugen van de applicatie. - Distributed Cache (bijvoorbeeld Redis) voor caching in een gedistribueerde omgeving, wat handig is bij schaalvergroting.
- Gebruik van cache-attributen in ASP.NET Core, zoals
[ResponseCache]voor het cachen van HTTP-antwoorden. - Implementatie van een eigen cache-laag met behulp van dictionaries en time-outs voor specifieke taken.
Voorbeeld van het gebruik van MemoryCache:
using System.Runtime.Caching;
MemoryCache cache = MemoryCache.Default;
string cacheKey = "user_123";
var userData = cache.Get(cacheKey);
if (userData == null)
{
userData = GetUserFromDatabase(123); // methode om gegevens op te halen
cache.Set(cacheKey, userData, DateTimeOffset.Now.AddMinutes(10));
}
// Gebruik userData