Junior — Middle
Aké metódy alebo nástroje ste použili na implementáciu cacheovania vo svojich projektoch?
sobes.tech AI
Odpoveď od AI
Na implementáciu cache v projektoch C# som použil niekoľko prístupov a nástrojov:
- MemoryCache z priestoru názvov
System.Runtime.Cachingna cacheovanie dát v pamäti aplikácie. - Distribuovaná cache (napríklad Redis) na cacheovanie v distribuovanom prostredí, čo je užitočné pri škálovaní.
- Použitie atribútov cache v ASP.NET Core, ako
[ResponseCache]na cacheovanie HTTP odpovedí. - Implementácia vlastnej vrstvy cache s použitím slovníkov a timeoutov pre špecifické úlohy.
Príklad použitia MemoryCache:
using System.Runtime.Caching;
MemoryCache cache = MemoryCache.Default;
string cacheKey = "user_123";
var userData = cache.Get(cacheKey);
if (userData == null)
{
userData = GetUserFromDatabase(123); // metóda na získanie dát
cache.Set(cacheKey, userData, DateTimeOffset.Now.AddMinutes(10));
}
// Použitie userData