SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REDIS PARA INICIANTES
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
OBJETIVO DE HOJE
Mostrar em 15 minutos o que você pode fazer com
o REDIS e porque ele vai ser imprescindível a partir
de hoje nos seus projetos.
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
QUEM USA ESTE TAL DE
REDIS?
Será mais um projeto obscuro do mundo do
Software Livre utilizado por meia duzia de geeks?
Wednesday, August 6, 14
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Como instalar e
rodar o REDIS?
Site Oficial: http://redis.io/
$ wget http://download.redis.io/releases/redis-2.8.13.tar.gz
$ tar xzf redis-2.8.13.tar.gz
$ cd redis-2.8.13
$ make
Servidor
$ src/redis-server
Cliente
$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REmote DIctionary
Server
•Sistema de par chave / valor
•Dados em memória
•Arquitetura Cliente / Servidor
•Escrito em C
•Open Source
•https://github.com/antirez/redis
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Chave
string
Ex: 5, _key, key
Valor
string
int
float
list
set
sorted
set
hash
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
string “um texto”
int 4
float 2,3
list [1, 2, “a”, 2, “texto”]
set (1, 2, “a”, “texto”)
sortedset [(1, 2), (2, 4), (“a”, 5), (“texto”, 20)]
nome Miguel
idade 34
sexo Masculino
hash
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Além de gravar e ler valores, é
possível manipular os dados
internamente.
Exemplos:
•modificar string
•incrementar / decrementar
números
•operações binárias
•operações com estruturas de
dados
http://redis.io/commands/
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Outros diferenciais
•Persistência em disco (failback)
•Pipelining
•Transações
•Replicação Master / Slave
•Scripting com Lua
•Clustering (em versão beta)
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
LEGAL, MAS COMO USO ISTO
NO MEU SISTEMA?
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Cache
REDIS pode ser usado como um
cache de dados e conteúdo, no
estilo Memcached.
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Gerenciamento de
sessão
Um dicionário (hash) armazena os
vários campos da sessão, e a chave
de acesso é o ID da sessão.
A função EXPIRE permite que sessões
sejam automaticamente invalidadas
após um período (timeout).
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Tabela de
classificação
Uso de conjunto ordenado (SORTED
SET) permite manter, atualizar e
consultar tabelas de classificação em
tempo real. Muito útil para jogos.
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Filas
(mensagens, task, ...)
Filas são um elemento constante em
qualquer programa.
A primitiva LIST oferece todas as
funcionalidades, incluindo operações
bloqueantes, úteis para implementação
de filas de mensagens e tarefas.
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Base de dados
Bibliotecas de ODM (Object Data
Mapper) implementam funcionalidades
de mapemento de objetos em
“tabelas”, indexação, busca típicas de
SGBD.
Importante saber das limitações e usar
com parcimônia.
https://github.com/mgalves/redisco
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Pub / Sub
Implementação pronta de PubSubHub:
consumidores podem assinar canais de
conteúdo, e produtores podem
publicar conteúdos em canais.
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Invente a sua...
Uma combinação apropriada de nome
de chave e de estruturas de dados
permitem uma infinidade de
possibilidades.
Invente a sua!
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC214
E COMO REDIS É USADO
NO “MUNDO REAL” ?
Como foi mostrado anteriormente,
empresas famosas usam REDIS.
Vamos dar uma espiadinha?
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REDIS é utilizado como cache web
560MM de pageviews / mês
54 site no mundo
40MM de respostas
25 servidores
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REDIS utilizado para armazenar a
homeline dos usuários, em listas
com tamanho máximo de 800
elementos.
30 bilhões de updates por dia
400.000.000 de tweets por dia
5000 tweets por segundo
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
Gestão de configurações de
deploy.
Roteamento de requests:
mapeamento de servidores
associados a usuários.
3,5 milhões de usuários
6 milhões de repositórios
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REDIS utilizado como indice
complementar ao MySQL,
tornando buscas mais rápidas e
reduzindo a carga sobre base de
dados.
Além disso, usa sistema de
PubSub para notificações de
eventos em tempo real.
1.6 milhões de uploads por dia
92 milhões de usuários
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
REDIS é utilizado para
armazenamento do grafo social
de usuários.
70MM de usuários
53MM de acessos únicos / mês
Média de 67 followers por usuário
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC214
E COM QUEM REDIS CONVERSA?
Consigo integrar REDIS no meu projeto?
Eu uso a linguagem X...
Wednesday, August 6, 14
Todas esta linguagens possuem bibliotecas e drivers
Thursday, July 24, 14
Todas estas linguagem possuem libs e drivers para REDIS
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
EM RESUMO
Ferramenta madura e com comunidade ativa
Testada e aprovada em grande escala no mundo real
Rápida, eficiente e extremamente versátil
Simplifica seu stack, substituindo uma série de outras
ferramentas
Wednesday, August 6, 14
Miguel Galves | @mgalves Redis para iniciantes | TDC2014
obrigado ;)
@mgalves
mgalves@gmail.com
http://github.com/mgalves/
http://br.linkedin.com/in/mgalves
Me livrei da minha conta no facebook.
Wednesday, August 6, 14

Más contenido relacionado

Destacado

Redis – What, Why, When, How?
Redis – What, Why, When, How?Redis – What, Why, When, How?
Redis – What, Why, When, How?Kinn Julião
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBPaulo Bischof
 
Politica Nacional do livro didático - ABRAPUI 2014
Politica Nacional do livro didático - ABRAPUI 2014Politica Nacional do livro didático - ABRAPUI 2014
Politica Nacional do livro didático - ABRAPUI 2014Vera Menezes
 
Redis um banco chave valor
Redis um banco chave valorRedis um banco chave valor
Redis um banco chave valorKinn Julião
 
Livros didáticos entre textos e imagens
Livros didáticos entre textos e imagensLivros didáticos entre textos e imagens
Livros didáticos entre textos e imagensHerbert Schutzer
 
Análise de livro didático língua portuguesa
Análise de livro didático língua portuguesaAnálise de livro didático língua portuguesa
Análise de livro didático língua portuguesaNágila De Sousa Freitas
 

Destacado (8)

Redis – What, Why, When, How?
Redis – What, Why, When, How?Redis – What, Why, When, How?
Redis – What, Why, When, How?
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDB
 
Politica Nacional do livro didático - ABRAPUI 2014
Politica Nacional do livro didático - ABRAPUI 2014Politica Nacional do livro didático - ABRAPUI 2014
Politica Nacional do livro didático - ABRAPUI 2014
 
Atividade de cartografia
Atividade de cartografiaAtividade de cartografia
Atividade de cartografia
 
Redis um banco chave valor
Redis um banco chave valorRedis um banco chave valor
Redis um banco chave valor
 
Livros didáticos entre textos e imagens
Livros didáticos entre textos e imagensLivros didáticos entre textos e imagens
Livros didáticos entre textos e imagens
 
Análise de livro didático língua portuguesa
Análise de livro didático língua portuguesaAnálise de livro didático língua portuguesa
Análise de livro didático língua portuguesa
 
Analise de livro didático
Analise de livro didáticoAnalise de livro didático
Analise de livro didático
 

Similar a Redis para iniciantes - TDC 2014

RCAAP: Reunião de coordenação: parte II
RCAAP: Reunião de coordenação: parte IIRCAAP: Reunião de coordenação: parte II
RCAAP: Reunião de coordenação: parte IIJoão Mendes Moreira
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Ambiente Livre
 
Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfMarcelo Silva
 
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...Pedro Príncipe
 
Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Raul Oliveira
 
MySQL para Desenvolvedores de Produto
MySQL para Desenvolvedores de ProdutoMySQL para Desenvolvedores de Produto
MySQL para Desenvolvedores de ProdutoMySQL Brasil
 
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...George Mendonça
 
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivrePalestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivreAmbiente Livre
 
Overview de Drupal pela Just Digital
Overview de Drupal pela Just DigitalOverview de Drupal pela Just Digital
Overview de Drupal pela Just DigitalJust Digital
 
LAMP: Desenvolvendo além do trivial
LAMP: Desenvolvendo além do trivialLAMP: Desenvolvendo além do trivial
LAMP: Desenvolvendo além do trivialGabriela Ferrara
 
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoPostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoAmbiente Livre
 
Performance e Tunning - Boas práticas em desenvolvimento
Performance e Tunning - Boas práticas em desenvolvimentoPerformance e Tunning - Boas práticas em desenvolvimento
Performance e Tunning - Boas práticas em desenvolvimentoMarcelo Raposo
 
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...iMasters
 
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoBig Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoAmbiente Livre
 
Overview sobre o CMS Drupal
Overview sobre o CMS DrupalOverview sobre o CMS Drupal
Overview sobre o CMS DrupalRafael Cichini
 

Similar a Redis para iniciantes - TDC 2014 (20)

RCAAP: Reunião de coordenação: parte II
RCAAP: Reunião de coordenação: parte IIRCAAP: Reunião de coordenação: parte II
RCAAP: Reunião de coordenação: parte II
 
Big Data, JVM e Redes Sociais
Big Data, JVM e Redes SociaisBig Data, JVM e Redes Sociais
Big Data, JVM e Redes Sociais
 
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
Open Source Data Science - Elaborando uma plataforma de Big Data & Analytics ...
 
Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdf
 
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...
Os Repositórios no Ciclo de vida dos dados - workflows de curadoria, publicaç...
 
Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018
 
Bi ferramentas olap 1
Bi   ferramentas olap 1Bi   ferramentas olap 1
Bi ferramentas olap 1
 
MySQL para Desenvolvedores de Produto
MySQL para Desenvolvedores de ProdutoMySQL para Desenvolvedores de Produto
MySQL para Desenvolvedores de Produto
 
Treinamento hadoop - dia4
Treinamento hadoop - dia4Treinamento hadoop - dia4
Treinamento hadoop - dia4
 
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
WordPress para Desenvolvedores - Utilizando WP como framework de desenvolvime...
 
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software LivrePalestra: Cientista de Dados – Dominando o Big Data com Software Livre
Palestra: Cientista de Dados – Dominando o Big Data com Software Livre
 
Treinamento hadoop - dia3
Treinamento hadoop - dia3Treinamento hadoop - dia3
Treinamento hadoop - dia3
 
Overview de Drupal pela Just Digital
Overview de Drupal pela Just DigitalOverview de Drupal pela Just Digital
Overview de Drupal pela Just Digital
 
Workshop - Repositórios Integrados
Workshop - Repositórios IntegradosWorkshop - Repositórios Integrados
Workshop - Repositórios Integrados
 
LAMP: Desenvolvendo além do trivial
LAMP: Desenvolvendo além do trivialLAMP: Desenvolvendo além do trivial
LAMP: Desenvolvendo além do trivial
 
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com PentahoPostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
PostgreSQL em projetos de Business Analytics e Big Data Analytics com Pentaho
 
Performance e Tunning - Boas práticas em desenvolvimento
Performance e Tunning - Boas práticas em desenvolvimentoPerformance e Tunning - Boas práticas em desenvolvimento
Performance e Tunning - Boas práticas em desenvolvimento
 
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...
Performance e Tunning no dia a dia do desenvolvimento: boas práticas com banc...
 
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e PentahoBig Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
Big Data Analytics - Do MapReduce ao dashboard com Hadoop e Pentaho
 
Overview sobre o CMS Drupal
Overview sobre o CMS DrupalOverview sobre o CMS Drupal
Overview sobre o CMS Drupal
 

Más de Miguel Galves

Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014
Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014
Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014Miguel Galves
 
New Strategy to detect SNPs
New Strategy to detect SNPsNew Strategy to detect SNPs
New Strategy to detect SNPsMiguel Galves
 
Comparison of Genomic DNA to cDNA Alignment Methods
Comparison of Genomic DNA to cDNA Alignment MethodsComparison of Genomic DNA to cDNA Alignment Methods
Comparison of Genomic DNA to cDNA Alignment MethodsMiguel Galves
 
Qualificação de Mestrado
Qualificação de MestradoQualificação de Mestrado
Qualificação de MestradoMiguel Galves
 
Uma abordagem computacional para a determinação de polimorfismos de base única
Uma abordagem computacional para a determinação de polimorfismos de base únicaUma abordagem computacional para a determinação de polimorfismos de base única
Uma abordagem computacional para a determinação de polimorfismos de base únicaMiguel Galves
 
Django: Uso de frameworks ágeis para desenvolvimento web
Django: Uso de frameworks ágeis para desenvolvimento webDjango: Uso de frameworks ágeis para desenvolvimento web
Django: Uso de frameworks ágeis para desenvolvimento webMiguel Galves
 
Data Mining em redes sociais
Data Mining em redes sociaisData Mining em redes sociais
Data Mining em redes sociaisMiguel Galves
 

Más de Miguel Galves (9)

Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014
Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014
Processamento de tweets em tempo real com Python, Django e Celery - TDC 2014
 
New Strategy to detect SNPs
New Strategy to detect SNPsNew Strategy to detect SNPs
New Strategy to detect SNPs
 
Comparison of Genomic DNA to cDNA Alignment Methods
Comparison of Genomic DNA to cDNA Alignment MethodsComparison of Genomic DNA to cDNA Alignment Methods
Comparison of Genomic DNA to cDNA Alignment Methods
 
Qualificação de Mestrado
Qualificação de MestradoQualificação de Mestrado
Qualificação de Mestrado
 
Uma abordagem computacional para a determinação de polimorfismos de base única
Uma abordagem computacional para a determinação de polimorfismos de base únicaUma abordagem computacional para a determinação de polimorfismos de base única
Uma abordagem computacional para a determinação de polimorfismos de base única
 
Django: Uso de frameworks ágeis para desenvolvimento web
Django: Uso de frameworks ágeis para desenvolvimento webDjango: Uso de frameworks ágeis para desenvolvimento web
Django: Uso de frameworks ágeis para desenvolvimento web
 
GIS em 3 horas
GIS em 3 horasGIS em 3 horas
GIS em 3 horas
 
AJAX
AJAXAJAX
AJAX
 
Data Mining em redes sociais
Data Mining em redes sociaisData Mining em redes sociais
Data Mining em redes sociais
 

Redis para iniciantes - TDC 2014

  • 1. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REDIS PARA INICIANTES Wednesday, August 6, 14
  • 2. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 OBJETIVO DE HOJE Mostrar em 15 minutos o que você pode fazer com o REDIS e porque ele vai ser imprescindível a partir de hoje nos seus projetos. Wednesday, August 6, 14
  • 3. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 QUEM USA ESTE TAL DE REDIS? Será mais um projeto obscuro do mundo do Software Livre utilizado por meia duzia de geeks? Wednesday, August 6, 14
  • 5. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Como instalar e rodar o REDIS? Site Oficial: http://redis.io/ $ wget http://download.redis.io/releases/redis-2.8.13.tar.gz $ tar xzf redis-2.8.13.tar.gz $ cd redis-2.8.13 $ make Servidor $ src/redis-server Cliente $ src/redis-cli redis> set foo bar OK redis> get foo "bar" Wednesday, August 6, 14
  • 6. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REmote DIctionary Server •Sistema de par chave / valor •Dados em memória •Arquitetura Cliente / Servidor •Escrito em C •Open Source •https://github.com/antirez/redis Wednesday, August 6, 14
  • 7. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Chave string Ex: 5, _key, key Valor string int float list set sorted set hash Wednesday, August 6, 14
  • 8. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 string “um texto” int 4 float 2,3 list [1, 2, “a”, 2, “texto”] set (1, 2, “a”, “texto”) sortedset [(1, 2), (2, 4), (“a”, 5), (“texto”, 20)] nome Miguel idade 34 sexo Masculino hash Wednesday, August 6, 14
  • 9. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Além de gravar e ler valores, é possível manipular os dados internamente. Exemplos: •modificar string •incrementar / decrementar números •operações binárias •operações com estruturas de dados http://redis.io/commands/ Wednesday, August 6, 14
  • 10. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Outros diferenciais •Persistência em disco (failback) •Pipelining •Transações •Replicação Master / Slave •Scripting com Lua •Clustering (em versão beta) Wednesday, August 6, 14
  • 11. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 LEGAL, MAS COMO USO ISTO NO MEU SISTEMA? Wednesday, August 6, 14
  • 12. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Cache REDIS pode ser usado como um cache de dados e conteúdo, no estilo Memcached. Wednesday, August 6, 14
  • 13. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Gerenciamento de sessão Um dicionário (hash) armazena os vários campos da sessão, e a chave de acesso é o ID da sessão. A função EXPIRE permite que sessões sejam automaticamente invalidadas após um período (timeout). Wednesday, August 6, 14
  • 14. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Tabela de classificação Uso de conjunto ordenado (SORTED SET) permite manter, atualizar e consultar tabelas de classificação em tempo real. Muito útil para jogos. Wednesday, August 6, 14
  • 15. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Filas (mensagens, task, ...) Filas são um elemento constante em qualquer programa. A primitiva LIST oferece todas as funcionalidades, incluindo operações bloqueantes, úteis para implementação de filas de mensagens e tarefas. Wednesday, August 6, 14
  • 16. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Base de dados Bibliotecas de ODM (Object Data Mapper) implementam funcionalidades de mapemento de objetos em “tabelas”, indexação, busca típicas de SGBD. Importante saber das limitações e usar com parcimônia. https://github.com/mgalves/redisco Wednesday, August 6, 14
  • 17. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Pub / Sub Implementação pronta de PubSubHub: consumidores podem assinar canais de conteúdo, e produtores podem publicar conteúdos em canais. Wednesday, August 6, 14
  • 18. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Invente a sua... Uma combinação apropriada de nome de chave e de estruturas de dados permitem uma infinidade de possibilidades. Invente a sua! Wednesday, August 6, 14
  • 19. Miguel Galves | @mgalves Redis para iniciantes | TDC214 E COMO REDIS É USADO NO “MUNDO REAL” ? Como foi mostrado anteriormente, empresas famosas usam REDIS. Vamos dar uma espiadinha? Wednesday, August 6, 14
  • 20. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REDIS é utilizado como cache web 560MM de pageviews / mês 54 site no mundo 40MM de respostas 25 servidores Wednesday, August 6, 14
  • 21. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REDIS utilizado para armazenar a homeline dos usuários, em listas com tamanho máximo de 800 elementos. 30 bilhões de updates por dia 400.000.000 de tweets por dia 5000 tweets por segundo Wednesday, August 6, 14
  • 22. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 Gestão de configurações de deploy. Roteamento de requests: mapeamento de servidores associados a usuários. 3,5 milhões de usuários 6 milhões de repositórios Wednesday, August 6, 14
  • 23. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REDIS utilizado como indice complementar ao MySQL, tornando buscas mais rápidas e reduzindo a carga sobre base de dados. Além disso, usa sistema de PubSub para notificações de eventos em tempo real. 1.6 milhões de uploads por dia 92 milhões de usuários Wednesday, August 6, 14
  • 24. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 REDIS é utilizado para armazenamento do grafo social de usuários. 70MM de usuários 53MM de acessos únicos / mês Média de 67 followers por usuário Wednesday, August 6, 14
  • 25. Miguel Galves | @mgalves Redis para iniciantes | TDC214 E COM QUEM REDIS CONVERSA? Consigo integrar REDIS no meu projeto? Eu uso a linguagem X... Wednesday, August 6, 14
  • 26. Todas esta linguagens possuem bibliotecas e drivers Thursday, July 24, 14 Todas estas linguagem possuem libs e drivers para REDIS Wednesday, August 6, 14
  • 27. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 EM RESUMO Ferramenta madura e com comunidade ativa Testada e aprovada em grande escala no mundo real Rápida, eficiente e extremamente versátil Simplifica seu stack, substituindo uma série de outras ferramentas Wednesday, August 6, 14
  • 28. Miguel Galves | @mgalves Redis para iniciantes | TDC2014 obrigado ;) @mgalves mgalves@gmail.com http://github.com/mgalves/ http://br.linkedin.com/in/mgalves Me livrei da minha conta no facebook. Wednesday, August 6, 14