Junior — Middle
Aké prístupy alebo nástroje ste použili na implementáciu cacheovania dát?
sobes.tech AI
Odpoveď od AI
Pre ukladanie dát do cache v C# často používam niekoľko prístupov:
-
MemoryCache z priestoru názvov
System.Runtime.Caching— pre lokálnu cache v pamäti aplikácie. Umožňuje nastaviť dobu života cache, priority atď. -
IMemoryCache a IDistributedCache z ASP.NET Core — pre cacheovanie v webových aplikáciách. IMemoryCache je lokálna cache, IDistrubutedCache je pre distribuovanú cache (napríklad Redis).
-
Externé cache systémy, ako Redis alebo Memcached, pre škálovateľné a distribuované cacheovanie.
Príklad použitia MemoryCache:
using System.Runtime.Caching;
var cache = MemoryCache.Default;
string cacheKey = "user_123";
var user = cache.Get(cacheKey) as User;
if (user == null)
{
user = GetUserFromDatabase(123); // metóda na získanie z databázy
cache.Set(cacheKey, user, DateTimeOffset.Now.AddMinutes(10));
}
// používame user
Tento prístup znižuje počet volaní do databázy a zlepšuje výkon.