NCache, um distribuído, linearmente escalável e rápido na memória armazenamento de valor-chave permite o armazenamento em cache de objetos para reduzir viagens ao banco de dados e dimensionar facilmente cargas mais altas. De forma similar, Redis também é uma solução de cache distribuído, mas não possui recursos importantes como SQL & Suporte LINQ, Cache do cliente (InProc) e Clusterização ponto a ponto etc. Para .NET Redis aplicativos cliente, NCache fornece uma API de wrapper idêntica ao StackExchange.Redis API para que os usuários possam mover-se facilmente para NCache com alterações mínimas de código.
Portanto, o passo real é aprender sobre a migração de Redis para NCache. Este blog fornece um guia passo a passo sobre o que precisa ser feito para uma migração tranquila do Redis para NCache.
NCache Adicionar ao carrinho Redis Docs
Necessidade de NCache Wrapper para Redis para .NET e .NET Core
Com tudo o que foi dito acima, agora imagine um Redis cliente usando um .NET/ puro.NET Core aplicativo, que deseja portar com o mínimo de alteração de código e recursos adicionais. O que ele deveria fazer? Usar NCache! Ele fornece muitos recursos e uma migração perfeita de Redis para NCache.
No entanto, por usar NCache com o seu Redis aplicativo cliente, você teria que aprender muito NCache, seus recursos fornecidos e, em seguida, incorporar NCache ao mesmo tempo que desempenha outras funções. O aplicativo implantado terá que ser testado novamente várias vezes, o que se tornaria um processo muito caro e problemático.
então, NCache resolveu o problema acima mencionado de forma muito inteligente; implementou um wrapper sobre NCache API idêntica à do StackExchange.Redis API. Este é o StackExchange padrão.Redis API devido à qual há uma alteração mínima de código necessária para o seu Redis aplicativo cliente para usá-lo de maneira escalável com NCache.
Como fazer uso de NCache Wrapper para Redis Facilmente
A melhor parte de migrar de Redis para NCache é a facilidade de nenhum código e nenhuma alteração lógica necessária para a migração. O Stack Exchange.Redis O comportamento da API é o mesmo em todo o NCache Integrado com Redis aplicativo cliente.
Você como usuário, só precisa editar alguns namespaces para fornecer acesso ao cache junto com o download do Pacote NuGet e toda a sua aplicação está pronta. O código-fonte para este wrapper junto com um aplicativo de amostra é carregado em GitHub.
Passo 1: Download NCache Redis NuGet do wrapper
NCache fornece uma Pacote NuGet para ser instalado em seu StackExchange.Redis inscrição. O pacote NuGet contém o cliente.ncconf arquivo que é usado para configurar o cliente de cache para acessar NCache cluster da máquina cliente.
1 |
Install-Package NCache.StackExchange.Redis |
Etapa: 2 Adicione o namespace ao seu aplicativo
Adicione o seguinte namespace, em seu aplicativo e arquivos de origem:
1 |
NCache.StackExchange.Redis |
- Conecte-se ao Cache e ao NCache banco de dados
O próximo passo é conectar-se ao cache através do Classe ConnectionMultiplexer que é o objeto central no StackExchange.Redis API que oculta os detalhes de vários servidores. Certifique-se de que o cache esteja em execução para que as operações possam ser executadas sem problemas. Você também pode aprender como criar um cache do guia passo a passo em NCache documentação.
1 |
ConnectionMultiplexer ncache = ConnectionMultiplexer.Connect(“cacheName”); |
Assim como NCache fornece um ICache interface para obter uma instância de um NCachecache de, GetNCacheInterface é obter o cache através do Redis interface.
1 |
ICache cache = ncache.GetNCacheInterface(“cacheName”); |
Assim como acessar um Redis banco de dados, é muito simples de usar NCache como um wrapper como escrito abaixo.
1 |
var db = ncache.GetDatabase(); |
Além disso, junto com o restante do seu aplicativo, você pode continuar usando o StackExchange.Redis API da mesma forma que você estava usando antes, sem nenhuma alteração de código.
Assim que seu aplicativo estiver conectado ao NCache cluster de cache, você pode realizar operações com bastante facilidade e é isso, seu Redis agora o aplicativo está migrado para NCache. Assim, seguindo apenas alguns passos migra todo o seu Redis para aplicação NCache sem qualquer aborrecimento.
Sua marca NCache Embrulho para um Redis Cliente?
utilização NCache para uma Redis aplicativo cliente oferece os seguintes benefícios:
-
- Consulta SQL e LINQ: NCache fornece suporte a SQL e LINQ para consultar o cache com base em atributos de objeto, grupos/subgrupos, Tag e tags nomeadas Isso torna muito fácil pesquisar os dados armazenados no cache.
- Código do lado do servidor (.NET): NCache permite que você implante código do lado do servidor para executar nos servidores de cache no cluster. Um rico conjunto de recursos é fornecido para permitir que você desenvolva e implante código do lado do servidor em .NET. Algumas características são Leia, Gravação e Carregador de cache.
- Mantendo o Cache Fresco (Dependências): NCache garante que seu cache esteja sempre atualizado e você possa confiar na integridade de seus dados. Se os dados em cache ficarem obsoletos, eles serão imediatamente atualizados para os do banco de dados. NCache fornece uma lista de recursos para esta finalidade, como Sincronizar Cache com Banco de Dados e Dependências ao contrário Redis que dá apenas através de Expirações.
- Desempenho do cache (cache do cliente (velocidade do InProc)): NCache ofertas Cache de cliente (Near Cache) que é basicamente um cache local muito próximo da sua aplicação (InProc/OutProc). Ele dá velocidade ao seu aplicativo InProc, o que significa uma recuperação mais rápida de objetos.
Conclusão
Para resumir, o que aprendemos com o blog é como NCache wrapper permite migrar todo o seu Redis para aplicação NCache seguindo uma série de passos simples. Você pode usar facilmente NCacherecursos de apenas usando o NCache Redis wrapper sem alteração de código e o StackExchange original.Redis API. Existem muitos outros recursos fornecidos por NCache que melhoram o desempenho do seu aplicativo e ajudam você a alcançar a escalabilidade desejada.
NCache Adicionar ao carrinho Baixar NCache Comparação de edições