Pular para o conteúdo

Trilha de estudo

Trilha Redis & Caching: tudo o que estudar, tópico por tópico

Avaliacao abrangente de Redis e caching cobrindo estruturas de dados, persistencia, replicacao, clustering, estrategias de cache, politicas de evicao, Pub/Sub, transacoes, scripting Lua e operacoes de producao incluindo monitoramento e seguranca.

Resposta curta

Para aprender Redis & Caching, percorra 6 módulos e 22 tópicos na ordem em que um apoia o próximo. Comece por Fundamentos e siga para Estruturas de Dados e Persistencia & Replicacao. Use o mapa como checklist, ou meça seu nível e estude só o que falta.

6
módulos
22
tópicos
45
min para avaliar

O que você vai estudar

Os tópicos estão agrupados por módulo. Abra um para ver os objetivos e os conceitos-chave.

1 · Fundamentos3 tópicos
  • Conceitos Fundamentais

    Arquitetura de armazenamento em memoria, event loop single-threaded, paradigma chave-valor, Redis vs Memcached, casos de uso, modelo cliente-servidor e nocoes basicas do protocolo RESP

    Objetivos

    • Explicar por que o Redis e single-threaded e ainda assim de alto desempenho
    • Comparar Redis e Memcached para diferentes casos de uso

    Conceitos-chave

    • armazenamento em memoria
    • event loop single-threaded
    • modelo chave-valor
    • Redis vs Memcached
    • protocolo RESP
    • arquitetura cliente-servidor
    • numeracao de bancos (SELECT)
    • nocoes basicas de expiracao de chaves
  • CLI & Comandos Basicos

    Uso do redis-cli, PING/PONG, GET/SET, DEL, EXISTS, KEYS, SCAN, TYPE, RENAME, DBSIZE, FLUSHDB e gerenciamento basico de chaves

    Objetivos

    • Conectar ao Redis e realizar operacoes basicas com chaves
    • Entender por que SCAN e preferivel a KEYS em producao

    Conceitos-chave

    • conexao redis-cli
    • comandos GET/SET
    • DEL e EXISTS
    • KEYS vs SCAN
    • comando TYPE
    • RENAME/RENAMENX
    • DBSIZE/FLUSHDB
    • convencoes de nomenclatura de chaves
  • Strings

    Operacoes com o tipo string: SET/GET com opcoes (EX, PX, NX, XX), MGET/MSET, INCR/DECR, APPEND, STRLEN, GETRANGE, SETRANGE e strings binario-seguras

    Objetivos

    • Usar comandos de string para contadores, flags e cache simples
    • Implementar locking distribuido basico com SETNX

    Conceitos-chave

    • opcoes SET (EX, NX, XX)
    • operacoes em lote MGET/MSET
    • contadores atomicos INCR/DECR
    • APPEND e STRLEN
    • GETRANGE/SETRANGE
    • strings binario-seguras
    • tamanho maximo de string (512MB)
    • SETNX para locking
2 · Estruturas de Dados5 tópicos
  • Hashes

    Tipo hash para armazenamento de objetos: HSET/HGET, HMSET/HMGET, HINCRBY, HDEL, HGETALL, HSCAN, otimizacao de memoria com codificacao ziplist e casos de uso de hashes

    Objetivos

    • Modelar objetos da aplicacao usando hashes Redis
    • Entender a codificacao ziplist e seus beneficios de memoria

    Conceitos-chave

    • comandos HSET/HGET
    • operacoes em lote HMSET/HMGET
    • HINCRBY/HINCRBYFLOAT
    • HGETALL vs HSCAN
    • HDEL e HEXISTS
    • codificacao ziplist
    • hash-max-ziplist-entries
    • modelagem de objetos com hashes
  • Listas & Conjuntos

    Listas (LPUSH, RPUSH, LPOP, RPOP, LRANGE, LINDEX, BLPOP) e Conjuntos (SADD, SREM, SMEMBERS, SINTER, SUNION, SDIFF, SRANDMEMBER) para filas e colecoes unicas

    Objetivos

    • Implementar filas de trabalho e listas de tarefas usando listas Redis
    • Usar conjuntos para teste de pertinencia e operacoes de intersecao

    Conceitos-chave

    • LPUSH/RPUSH/LPOP/RPOP
    • LRANGE e LINDEX
    • BLPOP/BRPOP bloqueante
    • SADD/SREM/SMEMBERS
    • SINTER/SUNION/SDIFF
    • SRANDMEMBER
    • listas como filas
    • conjuntos para colecoes unicas
  • Conjuntos Ordenados

    Conjuntos ordenados (ZADD, ZRANGE, ZRANK, ZSCORE, ZRANGEBYSCORE, ZRANGEBYLEX, ZINCRBY, ZUNIONSTORE, ZINTERSTORE) para leaderboards, filas de prioridade e indexacao de series temporais

    Objetivos

    • Projetar sistemas de leaderboard e ranking com conjuntos ordenados
    • Entender a complexidade O(log N) das operacoes de conjuntos ordenados

    Conceitos-chave

    • ZADD com NX/XX/GT/LT
    • ZRANGE/ZREVRANGE
    • ZRANGEBYSCORE/ZRANGEBYLEX
    • ZRANK/ZSCORE
    • ZINCRBY para atualizacao de scores
    • ZUNIONSTORE/ZINTERSTORE
    • implementacao com skiplist
    • padroes de leaderboard
  • Streams

    Redis Streams para event sourcing e filas de mensagens: XADD, XREAD, XRANGE, XLEN, grupos de consumidores (XGROUP, XREADGROUP, XACK), entradas pendentes, XCLAIM e trimming de streams

    Objetivos

    • Implementar processamento confiavel de mensagens com grupos de consumidores
    • Comparar Streams, Pub/Sub e filas baseadas em listas

    Conceitos-chave

    • XADD/XREAD/XRANGE
    • IDs de entradas de stream
    • grupos de consumidores (XGROUP)
    • XREADGROUP/XACK
    • lista de entradas pendentes (PEL)
    • XCLAIM para recuperacao
    • XTRIM/MAXLEN
    • streams vs Pub/Sub vs listas
  • Bitmaps & HyperLogLog

    Bitmaps (SETBIT, GETBIT, BITCOUNT, BITOP, BITPOS) para flags e analytics, HyperLogLog (PFADD, PFCOUNT, PFMERGE) para estimativa de cardinalidade com memoria minima

    Objetivos

    • Rastrear estado binario em escala usando bitmaps
    • Estimar cardinalidade com HyperLogLog e entender seus trade-offs

    Conceitos-chave

    • SETBIT/GETBIT
    • BITCOUNT/BITOP
    • BITPOS para primeiro bit setado
    • PFADD/PFCOUNT/PFMERGE
    • taxa de erro HLL (~0.81%)
    • eficiencia de memoria com bitmaps
    • usuarios ativos diarios com bitmaps
    • contagem de visitantes unicos com HLL
3 · Persistencia & Replicacao4 tópicos
  • Persistencia RDB & AOF

    Snapshots RDB (SAVE, BGSAVE, configuracao), AOF (arquivo append-only, politicas fsync, reescrita AOF), persistencia hibrida (RDB+AOF), trade-offs de durabilidade e procedimentos de recuperacao

    Objetivos

    • Configurar RDB e AOF para garantias de durabilidade adequadas
    • Entender o impacto de desempenho de cada modo de persistencia

    Conceitos-chave

    • snapshots RDB (BGSAVE)
    • diretivas de configuracao save
    • log append-only AOF
    • politicas fsync do AOF (always, everysec, no)
    • reescrita AOF (BGREWRITEAOF)
    • persistencia hibrida RDB+AOF
    • fork() e copy-on-write
    • ordem de procedimento de recuperacao
  • Replicacao

    Arquitetura master-replica, comando REPLICAOF, ressincronizacao completa e parcial, backlog de replicacao, escalabilidade de leitura com replicas, lag de replicacao e replicacao sem disco

    Objetivos

    • Configurar topologia master-replica para escalabilidade de leitura
    • Diagnosticar lag de replicacao e problemas de sincronizacao

    Conceitos-chave

    • comando REPLICAOF/SLAVEOF
    • ressincronizacao completa (RDB)
    • ressincronizacao parcial (backlog)
    • ID e offset de replicacao
    • replica-read-only
    • monitoramento de lag de replicacao
    • replicacao sem disco
    • min-replicas-to-write
  • Sentinel

    Redis Sentinel para alta disponibilidade: monitoramento, failover automatico, notificacao, configuracao de quorum, API do Sentinel, descoberta de clientes e prevencao de split-brain

    Objetivos

    • Implantar Sentinel para failover automatico com quorum adequado
    • Lidar com cenarios de split-brain em implantacoes distribuidas do Sentinel

    Conceitos-chave

    • monitoramento do Sentinel
    • failover automatico
    • configuracao de quorum
    • comandos SENTINEL (masters, get-master-addr-by-name)
    • notificacao via Pub/Sub
    • reconfiguracao de clientes
    • cenarios de split-brain
    • topologia de implantacao do Sentinel
  • Redis Cluster

    Redis Cluster para escalabilidade horizontal: hash slots (16384), topologia de cluster, redirecionamentos MOVED/ASK, resharding, cluster bus, migracao de replicas e restricoes de operacoes multi-chave

    Objetivos

    • Projetar e implantar um Redis Cluster para escalabilidade horizontal
    • Entender a distribuicao de hash slots e limitacoes multi-chave

    Conceitos-chave

    • 16384 hash slots
    • funcao hash CRC16
    • redirecionamentos MOVED/ASK
    • configuracao cluster-enabled
    • resharding de slots
    • cluster bus (protocolo gossip)
    • migracao de replicas
    • restricoes multi-chave (hash tags)
4 · Padroes de Cache4 tópicos
  • Estrategias de Cache

    Cache-aside (lazy loading), read-through, write-through, write-behind (write-back), padroes refresh-ahead, aquecimento de cache e escolha da estrategia certa por caso de uso

    Objetivos

    • Selecionar a estrategia de cache apropriada para diferentes requisitos de consistencia
    • Prevenir cache stampedes e problemas de thundering herd

    Conceitos-chave

    • cache-aside (lazy loading)
    • cache read-through
    • cache write-through
    • write-behind (write-back)
    • padrao refresh-ahead
    • aquecimento de cache
    • prevencao de cache stampede
    • problema de thundering herd
  • TTL & Politicas de Evicao

    Expiracao de chaves (EXPIRE, PEXPIRE, EXPIREAT, TTL, PERSIST), politicas de evicao (noeviction, allkeys-lru, volatile-lru, allkeys-lfu, volatile-lfu, allkeys-random, volatile-random, volatile-ttl), configuracao maxmemory e expiracao lazy vs ativa

    Objetivos

    • Configurar politicas de evicao apropriadas para padroes de carga de trabalho
    • Entender a diferenca entre expiracao lazy e ativa de chaves

    Conceitos-chave

    • EXPIRE/PEXPIRE/EXPIREAT
    • comandos TTL/PTTL
    • PERSIST para remover expiracao
    • configuracao maxmemory
    • politica de evicao LRU
    • politica de evicao LFU
    • politicas volatile vs allkeys
    • expiracao lazy vs ativa
  • Invalidacao de Cache

    Estrategias de invalidacao: baseada em tempo, orientada a eventos, baseada em versao, invalidacao por tags, notificacoes de keyspace, cache client-side assistido por Redis (tracking) e padroes de consistencia

    Objetivos

    • Projetar estrategias de invalidacao que equilibrem consistencia e desempenho
    • Usar notificacoes de keyspace do Redis para invalidacao orientada a eventos

    Conceitos-chave

    • invalidacao baseada em tempo
    • invalidacao orientada a eventos
    • chaves de cache baseadas em versao
    • invalidacao por tags
    • notificacoes de keyspace
    • cache client-side (tracking)
    • padroes de consistencia de cache
    • invalidacao em escala
  • Gerenciamento de Sessoes

    Redis para armazenamento de sessoes: modelagem de dados de sessao com hashes, expiracao por janela deslizante, compartilhamento de sessoes entre servicos, tratamento seguro de sessoes e escalabilidade do armazenamento de sessoes

    Objetivos

    • Projetar gerenciamento escalavel de sessoes com hashes e TTL do Redis
    • Implementar tratamento seguro de sessoes em servicos distribuidos

    Conceitos-chave

    • dados de sessao em hashes
    • TTL de janela deslizante
    • geracao de ID de sessao
    • compartilhamento de sessao entre servicos
    • serializacao de sessao
    • tokens de sessao seguros
    • escalabilidade do armazenamento de sessoes
    • migracao graciosa de sessoes
5 · Recursos Avancados4 tópicos
  • Pub/Sub

    Mensageria Publish/Subscribe: PUBLISH, SUBSCRIBE, PSUBSCRIBE, UNSUBSCRIBE, assinaturas baseadas em padrao, Pub/Sub no modo Cluster, limitacoes e casos de uso em tempo real

    Objetivos

    • Implementar mensageria em tempo real com canais Pub/Sub
    • Entender limitacoes do Pub/Sub e quando usar Streams

    Conceitos-chave

    • comandos PUBLISH/SUBSCRIBE
    • PSUBSCRIBE com pattern matching
    • UNSUBSCRIBE/PUNSUBSCRIBE
    • entrega fire-and-forget
    • Pub/Sub no modo Cluster
    • convencoes de nomenclatura de canais
    • garantias de ordenacao de mensagens
    • Pub/Sub vs Streams
  • Transacoes

    Transacoes Redis com MULTI/EXEC/DISCARD, locking otimista com WATCH, batching com pipeline, garantias de atomicidade, tratamento de erros em transacoes e comparacao com scripts Lua

    Objetivos

    • Implementar operacoes atomicas com MULTI/EXEC e WATCH
    • Decidir entre transacoes e scripts Lua para operacoes atomicas

    Conceitos-chave

    • MULTI/EXEC/DISCARD
    • WATCH para locking otimista
    • batching com pipeline
    • garantias de atomicidade
    • tratamento de erros em transacoes
    • execucao de comandos enfileirados
    • padrao CAS (check-and-set)
    • transacoes vs scripts Lua
  • Scripting Lua

    Scripting Lua server-side: EVAL/EVALSHA, cache de scripts, arrays KEYS e ARGV, redis.call vs redis.pcall, atomicidade de scripts, depuracao de scripts e scripting compativel com Cluster

    Objetivos

    • Escrever scripts Lua para operacoes atomicas complexas
    • Entender cache de scripts e implicacoes de desempenho

    Conceitos-chave

    • comandos EVAL/EVALSHA
    • SCRIPT LOAD/EXISTS/FLUSH
    • arrays KEYS[] e ARGV[]
    • redis.call vs redis.pcall
    • garantias de atomicidade de scripts
    • depuracao de scripts
    • hashing de chaves compativel com Cluster
    • Redis Functions (Redis 7+)
  • Modulos

    Ecossistema de modulos Redis: RedisJSON, RediSearch, RedisTimeSeries, RedisBloom, RedisGraph (descontinuado), carregamento de modulos, MODULE LOAD/UNLOAD e Redis Stack

    Objetivos

    • Selecionar modulos Redis apropriados para cargas de trabalho especializadas
    • Entender a distribuicao Redis Stack e seus componentes

    Conceitos-chave

    • RedisJSON (tipo de dados JSON)
    • RediSearch (busca full-text)
    • RedisTimeSeries
    • RedisBloom (probabilistico)
    • distribuicao Redis Stack
    • MODULE LOAD/UNLOAD
    • nocoes basicas da API de modulos
    • escolha entre modulos vs tipos nativos
6 · Operacoes de Producao2 tópicos
  • Monitoramento & Desempenho

    Monitoramento e ajuste de desempenho do Redis: comando INFO, SLOWLOG, monitoramento de LATENCY, MEMORY USAGE/DOCTOR, redis-benchmark, metricas-chave (taxa de acerto, fragmentacao de memoria, clientes conectados) e anti-padroes de desempenho

    Objetivos

    • Monitorar a saude do Redis usando comandos INFO, SLOWLOG e LATENCY
    • Identificar e resolver gargalos de desempenho em producao

    Conceitos-chave

    • secoes do comando INFO
    • analise de SLOWLOG
    • LATENCY LATEST/HISTORY
    • MEMORY USAGE/DOCTOR
    • ferramenta redis-benchmark
    • calculo da taxa de acerto do cache
    • razao de fragmentacao de memoria
    • deteccao de chaves grandes
  • Seguranca

    Seguranca Redis: sistema ACL (usuarios, permissoes, categorias), autenticacao requirepass, criptografia TLS/SSL, protected-mode, rename-command, seguranca de rede e melhores praticas de seguranca

    Objetivos

    • Configurar ACLs do Redis com principio de menor privilegio
    • Proteger implantacoes Redis com TLS, restricoes de rede e autenticacao

    Conceitos-chave

    • ACL SETUSER/GETUSER/LIST
    • categorias e permissoes ACL
    • autenticacao requirepass
    • configuracao TLS/SSL
    • protected-mode
    • ofuscacao rename-command
    • restricoes de endereco bind
    • melhores praticas de seguranca

Níveis: Júnior, Pleno e Sênior

Explique com suas palavras

Corrigido por IA · sem cadastro · 1 pergunta

Sem alternativas para chutar: você escreve, a IA corrige com a rubrica do tópico e diz em que nível sua resposta está.

0 / 600

Já estuda Redis & Caching?

A avaliação mede tópico por tópico, e o plano pula o que você já sabe.

Aberto para ler. A conta só é necessária para ser medido.

Perguntas frequentes

Por onde começar a estudar Redis & Caching?

Comece por Fundamentos: Conceitos Fundamentais, CLI & Comandos Basicos e Strings. O mapa ordena os tópicos pelo que depende de quê, então cada um prepara o seguinte.

Quanto tempo leva uma avaliação completa de Redis & Caching?

Uma avaliação completa desta trilha leva cerca de 45 minutos. O tempo de estudo depende de onde você começa; o diagnóstico mostra quais tópicos você pode pular.

Preciso de conta para usar esta página?

Não. O mapa, os objetivos e os conceitos-chave são abertos. A conta só é necessária para ser medido, ver seu gap por tópico e receber um plano.