Download - Cache com redis novatec
Who am I ?
• Garoto de programa há + de 10 anos• Palestrante no Net Coders.• Trabalhei em empresas como IBM, Ericsson,
Odebrecht e mais um monte por ai.• Gosto de codar em qualquer coisa.
• Introdução ao Redis.• Casos comuns de utilização do Redis.• Quem utiliza o Redis ?• Benchmark Redis vs Memched• Demo e Benchmark WebApi.
–EntityFramework vs Redis
Agenda
Redis é um ferramenta avançada de armazenamento de dados do tipo chave-valor (Key-Value).Este armazenamento ocorre essencialmente na memória RAM, evitando I/O de discos.Ele oferece uma estrutura de servidor de dados e tem um Api muito rica.
http://redis.io
REmote DIctionary Server
Instalação
• Redis é nasceu no Linux• http://redis.io/download• https://github.com/MSOpenTech/redis/releas
es• No Windows é só baixar, descompactar e
executar o redis-server.exe.• Pode configurar como serviço se quiser.
Commands
Keys [padão] = Listas todas as chaves que estão no cache
Set [chave valor] = "Guarda um valor"Setex[chave tempo valor] = Guarda um valor e informa o tempo de expiraçãoGet[chave] = Pegar o valor de uma chaveDel[chave] = Apaga chaveOutros Comandos e detalhes http://redis.io/commands
Clients for C#
ServiceStack.Redis - É open source mas não é free.
NServiceKit - é um fork do ServiceStack.Redis
StackExchange.Redis
http://redis.io/clients#c
Tipos Comuns de Utilização
• Cache de Dados / Conteudo–Combo-boxes - Paginas estáticas
• Gerenciamento de Sessões–Guarde um Hash com inf. do usuário e a função Expire os inválida após seu timeout
• Tabelas de Classificação–Usando SORTED SET é possível ja ter em memória uma lista/tabela pré-processada.
•Filas / Menssageria
Cache vs EntityFrameWork
CACHE
Transactions: 97 hitsAvailability: 100.00 %Elapsed time: 30.01 secsData transferred: 25.23 MBResponse time: 5.05 secsTransaction rate: 3.23 trans/secThroughput: 0.84 MB/secConcurrency: 16.31Successful transactions: 97Failed transactions: 0Longest transaction: 13.95Shortest transaction: 1.73
EntityFrameWork
Transactions: 58 hitsAvailability: 100.00 %Elapsed time: 29.75 secsData transferred: 15.09 MBResponse time: 8.06 secsTransaction rate: 1.95 trans/secThroughput: 0.51 MB/secConcurrency: 15.72Successful transactions: 58Failed transactions: 0Longest transaction: 19.95Shortest transaction: 1.46
siege.exe -c20 -t30s http://localhost:41011/api/Products
Referencias
http://redis.io/http://waldyrfelix.net/2014/10/01/palestra-escalando-aplicacoes-com-redis-dnad-2014/
http://oldblog.antirez.com/post/redis-memcached-benchmark.htmlhttps://github.com/NServiceKit/NServiceKit.Redishttps://code.google.com/p/siege-windows/https://www.jetbrains.com/decompiler/download/download_thanks.jsp?os=dphttp://pt.slideshare.net/miguelgalves/redis-37761090?qid=ec9e9ca5-94bd-4896-bc69-9e837a2ed1b2&v=qf1&b=&from_search=1http://pt.slideshare.net/profpv/redis-php2014?qid=ec9e9ca5-94bd-4896-bc69-9e837a2ed1b2&v=qf1&b=&from_search=2