В какой ситуации Redis или похожие инструменты стоит использовать.
Допустим, оперативные данные - цифра открытых соединений в определенный момент времени. Решается на уровне приложения просто, создаем переменную-счетчик, при открытии соединения увеличиваем, при закрытии - уменьшаем. Но с ростом нагрузки, приходится запустить несколько экземпляров приложения на нескольких серверах. Теперь в каждом экземпляре - разные счетчики и разные значения. Но если использовать внешнее хранилище - счетчик будет содержать общую цифру соединений.
Второй случай - нужна сохранность данных в кеше при перезапуске/падении приложения. Например, тот-же счетчик, но уже не открытых соединений, а посетителей за сегодня. После каждого перезапуска терять данные нельзя.
Третий случай - использование специфичных хранилищ, типа HyperLogLog в редисе.