Escalando Aplicações com Redis
-
Upload
waldyr-felix -
Category
Software
-
view
140 -
download
6
description
Transcript of Escalando Aplicações com Redis
Escalando Aplicações com Redis
Waldyr FelixConsultor Chefe na FCamaraBlog: waldyrfelix.netTwitter: @WaldyrFelix
NoSQL
Chave e valor
Memória
Disco
Replicação
Cache
Banco de Dados
Tipos de Dados
• Strings• Lists• Sets• Sorted sets• Hashes
Instalação
wget http://download.redis.io/releases/redis-2.8.14.tar.gz
tar xzf redis-2.8.14.tar.gz
cd redis-2.8.14
make
Baixar o Zip
Descompactar
No Linux
No Windows
Client e Server
• Executar o aplicativo e o servidor está no ar• Sintaxe simples • Economia de transações
Notação para chaves no Redis
• Armazenamento de objetos “indexados”> set “usuario:8372” “Waldyr Felix”
• Armazenamento de objetos complexos> set “usuario:3433:nome” “Waldyr Felix”> set “usuario:3433:email” “[email protected]”
API C# para Redis
• StackExchange.Redis • ServiceStack.Redis NServiceKit
ServiceStack.Redis é Open mas não é FREE
NServiceKit.Redis
Cache -Aside Pattern
• Otimização de acessos repetidos a alguma informação• Armazenamento intermediário
mais rápido que o original• Deve ser transparente para a
aplicação• Uso de AOP minimiza o
impacto na implementação • Pode ser local ou distribuído.
Para saber mais:
Redis como Cache
• Interface ICacheClient• Usa o comando SETEX
> setex “usuario:3433:nome” 120 “Waldyr Felix”
> set “usuario:3433:nome” “Waldyr Felix”> expire “usuario:3433:nome” 120
Exemplo de Cache com Redis
• Redis• NServiceKit.Redis• Postsharp• Aplicação ~12x mais rápida
App
Cache Distribuído
• Acesso remoto• Suporte a replicação• Segurança integrada• Configuração simples
Cache
VM1
VM3
VM2
Amazon ElastiCache Redis
Amazon ElastiCache Redis
Os End Points da Amazon só podem ser acessados pelos próprios Data Centers, ou seja, para testar precisamos fazer um
deployment no AWS.
Azure Redis Cache (Preview)
Azure Redis Cache (Preview)
Os End Points de cache do Microsoft Azure podem ser acessados externamente usando chaves de acesso, da mesma forma que
acessamos Azure Storage.
Referências
• http://redis.io/documentation• https://github.com/ServiceStack/ServiceStack.Redis• https://github.com/NServiceKit/NServiceKit• http://azure.microsoft.com/pt-br/documentation/articles/cache-dotn
et-how-to-use-azure-redis-cache/• http://aws.amazon.com/pt/elasticache/