В настоящее время я работаю над своим школьным проектом, который представляет собой исследование производительности Redis Cache.Вариант использования - это интернет-магазин с различным количеством продуктов (1.000 / 5.000 / 12.500 / 25.000).Я измеряю время отклика по разным сценариям, например: показать 50 товаров, 100 товаров или 200 товаров.Каждый продукт имеет размер около 1,5 КБ.
Проблема, с которой я сталкиваюсь в настоящее время, заключается в том, что мой Redis засоряется после получения более чем нескольких запросов.Первый запрос выполняется за 90 мсек, второй - за 140 мсек, после этого он начинает увеличиваться в 2 раза (200, 400, 800 и т. Д.) До 2000 мсек.
Я сохраняю всемои продукты по отдельности и сделать 50 - 200 отдельных запросов одновременно для получения продуктов (в формате JSON).Я пробовал конвейерную обработку, пакетирование и сохранение всех продуктов под одним ключом.Ни одно из этих решений не может повлиять на мою производительность.
Я сталкиваюсь с этой проблемой на своем локальном хосте и в Azure.
Какова наилучшая практика в моей ситуации для сохранения и извлечения продуктов до250 одновременных пользователей, получающих эти продукты одновременно?
Спасибо!Thomas