Ответ
Redis часто использую для кеширования результатов тяжёлых запросов к БД или API, чтобы ускорить работу приложения. Например, кеширование списка товаров в интернет-магазине:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$cacheKey = 'popular_products';
if (!$products = $redis->get($cacheKey)) {
$products = $db->query('SELECT * FROM products ORDER BY views DESC LIMIT 10')->fetchAll();
$redis->setex($cacheKey, 3600, serialize($products)); // Кеш на 1 час
} else {
$products = unserialize($products);
}
Также Redis отлично подходит для:
- Очередей задач (через LIST)
- Хранения сессий
- Реализации блокировок (мьютексы)
- Счетчиков (INCR/DECR)
- Pub/Sub для событийной архитектуры
Главные преимущества - скорость работы (in-memory) и богатый набор структур данных.