| Data de elaboração | 23/06/2021 |
| Responsável pelo estudo | Vinicius da Rosa Pereira |
| Equipe do estudo | ACDC, Vinicius da Rosa Pereira,Lucas da Silva Andrade, Elias Braga. |
| Alvo | Regulariza Já |
| Origem | O que originou o estudo? Melhoria: melhorar a performance e diminuir o tempo de resposta na listagem. |
| Objetivo | Avaliar a possibilidade de utilização do datastore Redis (Remote Dictionary Server) para salvamento em cache. |
| Observações |
2.1 O que é o Redis
O Redis, que significa Remote Dictionary Server, é um datastore de chave-valor rápido e de código aberto na memória, usado como banco de dados, cache, agente de mensagens e fila.
2.2 Benefícios do Redis
Todos os dados do Redis residem na memória, o que permite acesso a dados de baixa latência e alta taxa de transferência. Diferentemente dos bancos de dados tradicionais, os datastores na memória não exigem uma viagem ao disco, reduzindo a latência do mecanismo para microssegundos. Por causa disso, os datastores na memória podem suportar uma ordem de magnitude a mais de operações e tempos de resposta mais rápidos.
2.3 Pré-requisitos
Assinatura do Azure;
SDK do .NET Core;
2.4 Implementação
Para iniciar a implementação, precisamos fazer a instalação da biblioteca StackExchange.Redis.

A conexão com o Cache do Azure para Redis é gerenciada pela classe ConnectionMultiplexer. Essa classe deve ser compartilhada e reutilizada em todo o seu aplicativo cliente.

Após a instalação do pacote, podemos fazer uso do Redis com poucas linhas de comando, como no exemplo a seguir, que é gravado um objeto “Employee”.

Também é possível adicionar um TimeSpan, para monitorar o tempo de vida de um objeto.

Para recuperar o objeto salvo em cache, precisamos apenas do valor salvo como chave para a referência do objeto, assim como o tipo do objeto retornado e um conversor Json para montar o objeto.

Sendo assim, encontra-se inviável a sua aplicação, pois teria um alto custo de implementação para o conjunto de objetos necessários no regulariza já, o que não entra em balanço com a sua necessidade, até que seja identificada uma dor do cliente referente a tal.