Junior — Middle
Ce abordări sau instrumente ați folosit pentru implementarea caching-ului datelor?
sobes.tech AI
Răspuns de la AI
Pentru caching-ul datelor în C#, folosesc adesea mai multe abordări:
-
MemoryCache din spațiul de nume
System.Runtime.Caching— pentru cache local în memoria aplicației. Permite setarea duratei de viață a cache-ului, priorități etc. -
IMemoryCache și IDistributedCache din ASP.NET Core — pentru caching în aplicațiile web. IMemoryCache este un cache local, IDistrubutedCache este pentru cache distribuit (de exemplu, Redis).
-
Sisteme externe de cache, precum Redis sau Memcached, pentru caching scalabil și distribuit.
Exemplu de utilizare 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); // metodă de preluare din bază de date
cache.Set(cacheKey, user, DateTimeOffset.Now.AddMinutes(10));
}
// utilizăm user
Această abordare reduce numărul de apeluri către bază de date și crește performanța.