Sobes.tech
Junior — Middle

Кадом усулҳо ё асбобҳоро барои иҷрои кэш дар лоиҳаҳои худ истифода бурдед?

sobes.tech AI

Ҷавоб аз AI

Барои татбиқи кэшгирӣ дар лоиҳаҳои C# ман чанд роҳ ва воситаҳоро истифода кардам:

  • MemoryCache аз фазои номҳо System.Runtime.Caching барои кэшгирии маълумот дар хотираи барнома.
  • Кэш тақсимшуда (масалан, Redis) барои кэшгирӣ дар муҳити тақсимшуда, ки дар ҳалли масъалаҳои васеъшавӣ кӯмак мекунад.
  • Истифодаи атрибутҳои кэшгирӣ дар ASP.NET Core, мисоли [ResponseCache] барои кэшгирии ҷавобҳои HTTP.
  • Иҷрои қабати кэшии худ бо истифода аз луғатҳо ва вақти тамдид барои вазифаҳои махсус.

Масалан барои истифодаи MemoryCache:

using System.Runtime.Caching;

MemoryCache cache = MemoryCache.Default;
string cacheKey = "user_123";
var userData = cache.Get(cacheKey);
if (userData == null)
{
    userData = GetUserFromDatabase(123); // усули гирифтани маълумот
    cache.Set(cacheKey, userData, DateTimeOffset.Now.AddMinutes(10));
}
// Истифодаи userData