davidcastagnetoa/skills

cache_invalidation

Invalidación activa de claves cuando los datos subyacentes cambian

First seen Mar 3, 2026

Installation

$ npx skills add davidcastagnetoa/skills --skill cache_invalidation

Also in this package

Other skills from davidcastagnetoa/skills · top by installs.

npx skills add davidcastagnetoa/skills

Browse all from davidcastagnetoa/skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 1,607 B
  • docs SUMMARY.md 93 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 11 installs

SKILL.md

cache_invalidation

Estrategia de invalidación activa de caché para mantener la consistencia entre Redis y PostgreSQL. Cuando los datos de origen cambian, las keys de caché correspondientes se eliminan proactivamente.

When to use

Usar en el cache_agent para invalidar datos cacheados cuando se actualizan en PostgreSQL: blacklists, configuración de umbrales, y datos de sesión modificados.

Instructions

  1. Write-through: al actualizar PostgreSQL, invalidar Redis en la misma transacción.

``python async with db.transaction(): await db.execute(update_query) await redis.delete(f'cache:{key}') ``

  1. Pattern-based: invalidar por patrón: redis.delete(redis.keys('config:')).
  2. Para blacklist: usar pub/sub para notificar a todas las instancias.

``python redis.publish('cache:invalidate', json.dumps({'pattern': 'blacklist:*'})) ``

  1. Implementar versioning de caché: cache:v2:key al cambiar estructura de datos.
  2. Nunca depender solo de TTL para consistencia de datos críticos; invalidar activamente.
  3. Registrar invalidaciones en métricas: cacheinvalidationstotal{pattern}.

Notes

  • Evitar KEYS * en producción; usar SCAN para buscar keys por patrón.
  • La invalidación por pub/sub es eventual (milisegundos de delay); aceptable para este caso de uso.
  • Para la configuración de umbrales, usar polling desde Redis cada 30s en lugar de invalidación.