В общем есть тяжелый запрос ответ которого может содержать 10000 объектов, что вызовет некоторые проблемы при выполнении кода, я тут подумал раз у меня достаточно оперативной памяти может мне использовать какой нибудь Redis для временного хранения данных, что бы каждый раз этот запрос не обрабатывать в БД?
Собственно почему я здесь, возможно PostgreSQL сам кэширует одинаковые запросы и не стоит переживать за повторные однотипные запросы? (пользователь нажмет от 20-100 кнопку что в теории создаст повторные запросы к БД
Нет, результаты запросов — не кеширует и не собирается (потому что в подавляющем большинстве случае это бесполезная трата ресурсов, и, т.о., снижение производительности). А вот использованные для получения этих результатов данные (блоки таблиц, индексов и т.п.) кешируются, конечно. Так что повторные однотипные запросы могут быть быстрее.
Если вариантов ответов немного, то можно и закешировать. Если много, при разных параметрах, то ОЗУ может не вынести 🙂
Обсуждают сегодня