2015-11-03 4 views
1

У нас есть ряд действительно дорогих запросов, которые связаны с несколькими объединениями, которые я хотел бы кэшировать с помощью Redis (используя конечную структуру ServiceStack.Redis).ServiceStack Redis - кэширование дорогостоящих запросов

Сколько строк/элементов следует хранить в Redis, прежде чем память станет проблемой? e..g Я могу хранить 10 000+ строк в Redis, не беспокоясь о проблемах с памятью (наш сервер, на котором также находится наше веб-приложение, имеет 8Gb Ram).

Во-вторых, что является лучшим способом их хранения (как List или Hash?).

ответ

2

Для количества строк это зависит от размера строки. Лучшим подходом было бы начать сохранение и увидеть использование памяти на сервере Redis. 10k не похоже на слишком много данных.

О том, как их хранить, я бы использовал хэш только в том случае, если мне нужно получить определенные строки, например, если бы я сделал фильтрацию и сортировку в Redis, что теоретически возможно. Но, скорее всего, фильтрация и сортировка результатов выполняются в вашем приложении, поэтому вы можете хранить все эти данные только в одном ключе. То, что мы сделали в нашем приложении, сериализовало все результаты в json, заархивировало их в коде, а затем сохранили в простой ключ Redis, и это обеспечило наименьшее потребление памяти.

Смежные вопросы