Один объект размером 2 ГБ (возможно, его будет больше в будущем) для хранения в Redis Cache - PullRequest
0 голосов
/ 02 июля 2018

мы планируем внедрить распределенный кэш (Redis Cache) для нашего приложения. У нас есть данные, которые мы сохранили на карте размером около 2 ГБ , и это один объект. В настоящее время он хранится в контекстной области, аналогично, у нас есть много объектов, хранящихся в контекстной области.

Теперь мы планируем сохранить все эти контекстные данные в Redis Cache. Здесь данные карты занимают большой объем памяти, и мы должны хранить эти данные карты как один объект значения ключа.

Подходит ли Redis Cache для моего требования. И какой тип данных подходит для хранения этих данных в Redis Cache.

Пожалуйста, предложите способ реализации этого.

1 Ответ

0 голосов
/ 02 июля 2018

Итак, вы не закончили обсуждение другого вопроса и начали новый? 2 ГБ - МНОГО. Предположим, у вас есть связь 1 Гбит / с между вашими серверами. Вам нужно 16 секунд, чтобы передать необработанные данные. Добавьте стоимость протокола, добавьте стоимость десериализации. И сейчас у тебя 20 секунд. Это аппаратные ограничения. Конечно, вы можете получить ссылку 10 Гбит / с. Или даже мультиплексировать его за 20 Гбит / с. Но так ли это? Реальное решение состоит в том, чтобы разбить эти данные на части и выполнять только частичные обновления.

К теме: используйте строковый (базовый) тип, вариантов нет. Другие типы являются сложными структурами, и вам нужно только одно значение.

...