Introdução ao redis

13
Introdução ao Redis Wanderlei Souza @wandi Denis Tiago @denistiago

Transcript of Introdução ao redis

Page 1: Introdução ao redis

Introdução ao Redis

Wanderlei Souza @wandiDenis Tiago @denistiago

Page 2: Introdução ao redis

Agenda

● Introdução ao Redis● Estrutura de dados● Integração com Java/Spring● Redis for (dev)ops● Exemplos de aplicações com Redis

Page 3: Introdução ao redis

A gentle introduction ;)

● in-memory database● diferentes estruturas de dados● desempenho● replicação master-slave ● client-side sharding● persistência

Page 4: Introdução ao redis

Use cases

Page 5: Introdução ao redis

redis-cli

command line tool

Page 6: Introdução ao redis

Estrutura de dados

● Strings● Lists● Hashes● Sets● Sorted Sets

Page 7: Introdução ao redis

Estrutura de dados

prática

Page 8: Introdução ao redis

Spring data integration

● Connection abstraction● Serializers● Redis Template

○ Type Safe ○ Transactions○ Exception Translation

● Spring cache

Page 9: Introdução ao redis

Spring data integration

● Redis Template

@Injectprivate RedisTemplate<String, User> template;

template.opsForList().set("list", id, new User(id));

User user = template.opsForList().index("list", id);

User user = template.opsForList().leftPop(list);

Page 10: Introdução ao redis

Spring data integration

● Integração com Spring Cache

@Cacheable public User getUser(Long id) { ... }

Page 11: Introdução ao redis

Redis for (dev)ops

● Monitoração (info/monitor)● src/redis-benchmark● Slaveof● Redis Cluster● redis.conf

Page 12: Introdução ao redis

Redis for (dev)ops - redmon

Page 13: Introdução ao redis

Típicos cenários de uso

● Sistemas de Ranking● Contadores/Estatística● N items em um período T de tempo● Pub/Sub● Caching