Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 23864|Відповідь: 1

[.NET Core] ASP.NET Урок використання кешу пам'яті Core MVC

[Копіювати посилання]
Опубліковано 2019-11-12 16:16:36 | | | |
Під час розробки проєктів кеш часто використовується для кешування деяких даних відповідно до бізнес-потреб або кешування вмісту запитів до бази даних, щоб зменшити навантаження на базу даних.

Поширені кеші пам'яті: System.Runtime.Caching / MemoryCache та Microsoft.Extensions.Caching.Memory

Microsoft має 2 рішення, 2 різні пакети NuGet для кешування, обидва чудові, за рекомендацією Microsoft, віддають перевагу Microsoft.Extensions.Caching.Memory, бо він краще інтегрується з Asp .NET core. Його легко впровадити в механізм інжекції залежностей Asp .NET Core.

У цій статті використовується Microsoft.Extensions.Caching.Memory для кешування даних, що скорочено MSCache, і Microsoft представляє:Вхід за гіперпосиланням видно.

Примітка: Microsoft.Extensions.Caching.Memory є безпечною для потоків

Що може зробити MSCache?

  • Абсолютна підтримка закінчена
  • Підтримка ковзного терміну дії (вкажіть час, TimeSpan, відкладено, якщо кешований час у визначений час, інакше він закінчиться)
  • Закінчений зворотний дзвінок
  • Індивідуальний термін дії


Налаштування кешу MemoryCacheEntryOptions

  • AbsoluteExpirationАбсолютний час закінчення, якщо нуль, умова є недійсною
  • AbsoluteExpirationRelativeToNowАбсолютний час закінчення відносно поточного часу (за допомогою TimeSpan) є нульовим умовою недійсним
  • КовзанняТермін ДіїЗсунути час придатності
  • ExpirationTokensДоступно для налаштування терміну дії кешу
  • Після виселенняЗворотні дзвінкиЗворотні виклики для інвалідації кешу
  • ПріоритетПріоритет елемента кешу (порядок, у якому кеш повністю очищається, коли кеш заповнений)
  • РозмірПредставляє розмір кешованих даних, який зазвичай є нульовим у кеші в пам'яті



Почніть з MSCache

Проєкт ASP.NET Core MVC
Встановлення команд NuGet:


Під час використання створюйте прості пакети.

Інтерфейс:

Реалізація:


Конфігурація ін'єкції залежностей синглтон


Тести використовують MSCache

Запишіть дані з використанням відносного терміну і ковзання і виконайте тест читання з кодом наступним чином.

Код контролера:

Запишіть кешовані дані:


Читайте кешовані дані:

Доступ:Вхід за гіперпосиланням видно.Після встановлення відносного терміну дії та ковзання терміну дії перейдіть до наступного вигляду: https://localhost:44370/Home/Get Отримайте кешовані дані наступним чином:




Протягом 30 секунд я кілька разів перейшов за посиланням, щоб прочитати кеш, і виявив, що абсолютний термін дії повністю закінчується через 30 секунд, але я все одно міг його прочитати після пересування терміну, як показано на рисунку нижче:



(Кінець)





Попередній:[Вікна] XMind 8 Crack-Solve Самовикористання Зелена портативна версія
Наступний:DateTime у .Net Core не відповідає часу Windows у Linux Docker
 Орендодавець| Опубліковано 2024-7-10 18:13:17 |
ASP.NET Core 8 додає напряму: builder. Services.AddMemoryCache();
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com