Кешировать выгодно часто читаемые данные, получение которых дорого и для которых допустима понятная политика устаревания. Решение принимают по измерениям нагрузки и ожидаемому hit rate.
Как понять, какие данные нужно кэшировать?
Кешировать выгодно часто читаемые данные, получение которых дорого и для которых допустима понятная политика устаревания. Решение принимают по измерениям нагрузки и ожидаемому hit rate.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Кешировать выгодно часто читаемые данные, получение которых дорого и для которых допустима понятная политика устаревания. Решение принимают по измерениям нагрузки и ожидаемому hit rate.
Оцените частоту чтения и изменения, стоимость источника, размер значения, разнообразие ключей и необходимость персонализации. Данные, читаемые один раз, могут лишь занимать память; чувствительные или пользовательские ответы требуют корректной изоляции ключей.
До внедрения определите TTL, инвалидирование, поведение при промахе и отказе кеша. Затем измерьте latency, нагрузку на источник и ошибки. Само добавление Redis не гарантирует ускорение: сериализация и сеть тоже стоят времени.