Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 23864|Resposta: 1

[.NET Core] ASP.NET Tutorial de uso do cache de memória do núcleo MVC

[Copiar link]
Postado em 12-11-2019 16:16:36 | | | |
Ao desenvolver projetos, o cache é frequentemente usado para armazenar em cache alguns dados de acordo com suas necessidades de negócios, ou para armazenar em cache o conteúdo das consultas do banco de dados para reduzir a pressão sobre o banco de dadas.

Caches de memória comumente usados: System.Runtime.Caching / MemoryCache e Microsoft.Extensions.Caching.Memory

A Microsoft tem 2 soluções, 2 pacotes NuGet diferentes para cache, ambos são ótimos, segundo a recomendação da Microsoft, preferem usar o Microsoft.Extensions.Caching.Memory porque ele se integra melhor com o Asp .NET Core. Ele pode ser facilmente injetado no mecanismo de injeção de dependências do Asp .NET Core.

Este artigo usa Microsoft.Extensions.Caching.Memory para armazenar dados em cache, que é abreviado como MSCache, e a Microsoft apresenta:O login do hiperlink está visível.

Nota: Microsoft.Extensions.Caching.Memory é seguro para threads

O que o MSCache pode fazer?

  • Suporte com expiração absoluta
  • Suporte para expiração deslizante (especifique um tempo, TimeSpan, adiado se houver um tempo em cache dentro do tempo especificado, caso contrário expirará)
  • Retorno expirado
  • Expiração personalizada


Configurações de cache MemoryCacheEntryOptions

  • Expiração AbsolutaTempo absoluto de expiração, se nulo, a condição é inválida
  • ExpiraçãoAbsolutaRelativaToNowO tempo absoluto de expiração relativo ao tempo atual (usando TimeSpan) é condição nula inválida
  • Expiração deslizanteDeslize o tempo de validade
  • ExpirationTokensDisponível para personalizar o vencimento do cache
  • Retornos pós-EvictionCallingRetornos de invalidação de cache
  • PrioridadePrioridade de item do cache (a ordem em que o cache é absolutamente limpo quando ele está cheio)
  • TamanhoRepresenta o tamanho dos dados em cache, que geralmente são nulos no cache em memória



Comece com o MSCache

Projeto ASP.NET MVC Núcleo
Instalação do Comando Nuget:


Ao usar, faça pacotes simples.

Interface:

Implementação:


Singleton de configuração de injeção de dependências


Os testes utilizam MSCache

Escreva os dados usando expiração relativa e expiração deslizante e realize um teste de leitura com o código da seguinte forma.

Código do Controlador:

Gravar dados em cache:


Leia dados em cache:

Acesso:O login do hiperlink está visível.Após definir a expiração relativa e a expiração deslizante, acesse: https://localhost:44370/Home/Get Obtenha os dados em cache da seguinte forma:




Em 30 segundos, acessei o link para ler o cache várias vezes e descobri que a expiração absoluta expirava completamente após 30 segundos, mas ainda consegui ler após deslizar a expiração, como mostrado na figura abaixo:



(Fim)





Anterior:[Janelas] XMind 8 Edição Portátil Verde Auto-Usada XMind 8
Próximo:O horário DateTime no .Net Core é inconsistente com o horário do Windows no Linux Docker
 Senhorio| Postado em 2024-7-10 18:13:17 |
ASP.NET Core 8 adiciona diretamente: construtor. Services.AddMemoryCache();
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com