Installs into .claude/skills of the current project.
Are you the author of Database Cache?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/vitammiin-database-cache)
---
name: database-cache
description: Кэш и Redis — TTL, инвалидация, distributed lock, rate limiting, Streams (роль database). Use when проектируем кэширование или Redis-логику; read-only чтение ключей — $database-query.
---
# Задача: кэш и Redis (database)
Спроектируй кэширование/Redis-логику (см. `$database`, `$redis`).
1. Спроектируй по паттерну **cache-aside**: чтение из кэша → промах → из БД → запись с **TTL**; инвалидация по событию записи; защита от **cache stampede** (jitter TTL, single-flight/lock). При необходимости: **distributed lock** (`SET NX PX` с уникальным токеном + release через Lua compare-and-delete; Redlock — осторожно), **rate limiting** (token bucket / sliding window), очереди/события — **Streams** (`XADD` + consumer groups), счётчики (`INCR`), pub/sub. Дизайн ключей с namespace и лимитом памяти/eviction.
2. **Покажи план изменений**: какие ключи/структуры создаёшь или инвалидируешь, TTL и политика eviction, оценка влияния — объём памяти, массовые записи/удаления, обратимость (как откатить/очистить).
3. Перед мутациями в живом Redis (массовые записи, инвалидация по маске, изменение конфигурации) **дождись ЯВНОГО подтверждения человека** — слова вроде «да, применяй»; молчание или «ок» на другой вопрос — НЕ подтверждение. Правки только кода приложения подтверждения не требуют.
4. Применяй через MCP `redis` (на проде без `KEYS`/`FLUSHDB`), затем **проверь результат и покажи доказательство**: `TTL` выставлен у ключей, hit-rate (`INFO stats`: keyspace_hits/misses), выборочный `GET`/`SCAN` по namespace.
Опирайся на `$redis`, `$database`, `$backend-architecture`.