mindrally/redis-best-practices

Melhores práticas de desenvolvimento Redis para caching, estruturas de dados e operações de chave-valor de alto desempenho

O que é redis-best-practices?

Esta habilidade fornece um guia abrangente de melhores práticas para desenvolvimento com Redis, cobrindo desde estratégias de caching (como cache-aside, invalidação de cache e TTL) até o uso ideal de estruturas de dados (strings, hashes, lists, sets, sorted sets, hyperloglogs, bitmaps e geospatial). É útil para desenvolvedores e engenheiros que desejam otimizar operações de chave-valor, garantir alta performance e evitar armadilhas comuns (como chaves grandes ou bloqueios). Suporta qualquer ambiente que utilize Redis (local, Docker, cloud gerenciado), e seu conteúdo é baseado no documento SKILL.md, que inclui exemplos de código, comandos CLI e recomendações de configuração. O foco principal é melhorar a eficiência, escalabilidade e manutenibilidade de aplicações que dependem do Redis como banco de dados em memória, cache ou message broker.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mindrally/skills/tree/main/skills/redis-best-practices

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que redis-best-practices faz?

Melhores práticas de desenvolvimento Redis para caching, estruturas de dados e operações de chave-valor de alto desempenho

Visão Geral

Esta skill reúne recomendações consolidadas para projetar, implementar e manter sistemas usando Redis de forma eficiente e confiável.

Princípios Chave

  1. Caching – Use estratégias como cache-aside, defina TTLs adequados e evite cache stampede.
  2. Estruturas de Dados – Prefira hashes para objetos, sorted sets para rankings e lists para filas simples. Evite o uso excessivo de keys sem escopo.
  3. Alta Performance – Mantenha operações rápidas: evite comandos KEYS, use SCAN, e prefira pipelines/MULTI para operações em lote.

Exemplos de Uso

# Exemplo de conexão via CLI
redis-cli -h localhost -p 6379

# Definir uma chave com TTL
SET user:1000:session "abc123" EX 300
import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)

# Cache-aside pattern
def get_user(user_id):
    key = f"user:{user_id}:data"
    data = r.get(key)
    if data is None:
        data = query_database(user_id)
        r.setex(key, 3600, data)
    return data

Boas Práticas

  • Nomenclatura: Use namespaces como objeto:id:campo (ex: user:1000:name).
  • Tamanho de chaves: Evite chaves muito longas (>1024 bytes).
  • Serialização: Prefira JSON ou protocol buffers para valores.
  • Monitoramento: Use INFO, MONITOR e SLOWLOG para identificar gargalos.

Estruturas de Dados Recomendadas

TipoCaso de UsoComando Exemplo
StringCache de objetos, contadoresSET, GET, INCR
HashObjetos com múltiplos camposHSET, HGET, HGETALL
ListFilas, históricoLPUSH, RPOP, LRANGE
SetTags, relacionamentosSADD, SMEMBERS, SUNION
Sorted SetRankings, intervalos ordenadosZADD, ZRANGE, ZREVRANK
HyperLogLogContagem aproximada de distintosPFADD, PFCOUNT
BitmapFlags booleanas, trackingSETBIT, GETBIT, BITCOUNT
GeospatialCoordenadas, proximidadeGEOADD, GEORADIUS, GEODIST

Armadilhas Comuns

  • Não use KEYS * em produção – use SCAN 0.
  • Evite chaves muito grandes (>10 MB) – divida em hashes ou compressão.
  • Cuidado com comandos bloqueantes: BLPOP, BRPOP sem timeout adequado.
  • Monitoramento de memória: ative maxmemory e política de eviction (ex: allkeys-lru).

Referências

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

mindrally/accessibility-a11y

Implement web accessibility (a11y) best practices following WCAG guidelines to create inclusive, accessible user interfaces.

mindrally/chrome-extension-development

Expert guidelines for Chrome extension development with Manifest V3, covering security, performance, and best practices. Use when building browser extensions, creating popup UIs, implementing content scripts, working with Chrome APIs, managing extension permissions, or publishing to Chrome Web Store.

mindrally/computer-vision-opencv

Expert guidance for computer vision development using OpenCV, PyTorch, and modern deep learning techniques for image and video processing.

mindrally/data-analysis-jupyter

Expert guidance for data analysis, visualization, and Jupyter Notebook development with pandas, matplotlib, seaborn, and numpy.

mindrally/deep-learning-pytorch

Expert guidance for deep learning, transformers, diffusion models, and LLM development with PyTorch, Transformers, Diffusers, and Gradio.

mindrally/expo-react-native-typescript

Expert in Expo React Native TypeScript mobile development with best practices

mindrally/fastapi-python

Expert in FastAPI Python development with best practices for APIs and async operations

mindrally/framer-motion

Expert guidelines for building performant animations with Framer Motion/Motion library in React applications

mindrally/htmx

HTMX development guidelines for building dynamic web applications with minimal JavaScript using HTML attributes.

mindrally/jwt-security

Guidelines for implementing JWT authentication with security best practices for token creation, validation, and storage

mindrally/machine-learning

Machine learning development with JAX, functional programming patterns, and high-performance computing.

mindrally/mysql-best-practices

MySQL development best practices for schema design, query optimization, and database administration

mindrally/nextjs-react-typescript

Expert in TypeScript, Node.js, Next.js App Router, React, Shadcn UI, Radix UI and Tailwind

mindrally/nextjs-typescript-tailwindcss-supabase

Full-stack Next.js 14 development with TypeScript, TailwindCSS, and Supabase for building production-ready web applications.

mindrally/odoo-development

Expert guidance for Odoo ERP development including Python ORM, XML views, and module architecture

mindrally/puppeteer-automation

Expert guidance for browser automation using Puppeteer with best practices for web scraping, testing, screenshot capture, and JavaScript execution in headless Chrome.

mindrally/scrapy-web-scraping

Expert guidance for building web scrapers and crawlers using the Scrapy Python framework with best practices for spider development, data extraction, and pipeline management.

mindrally/scss-best-practices

SCSS/Sassy CSS best practices and coding guidelines for maintainable, scalable stylesheets

mindrally/typeorm

Guidelines for developing with TypeORM, a full-featured ORM for TypeScript and JavaScript supporting multiple databases

mindrally/web-scraping

Expert in web scraping and data extraction with Python tools

Habilidades Relacionadas