具有2GB大小(将来可能还会增加)的单个对象存储在Redis Cache中

时间:2018-07-02 07:06:18

标签: redis spring-data-redis redis-cluster redis-cli

我们计划为我们的应用程序实现分布式缓存(Redis Cache)。我们有一个数据并将其存储在地图中,其大小约为 2GB ,并且它是一个对象。当前它类似地存储在Context范围中,我们有大量对象存储到Context范围中。

现在,我们计划将所有这些上下文数据存储到Redis Cache中。这里的地图数据占用大量内存,我们必须将此地图数据存储为单个键值对象。

它是否适合我的需求。以及哪种数据类型适合将该数据存储到Redis Cache中。

请提出实现此方法的方法。

1 个答案:

答案 0 :(得分:0)

因此,您没有完成另一个问题的讨论,而是开始了一个新的讨论? 2GB是很多。假设您的服务器之间有1Gb / s的链路。您只需要16秒钟即可传输原始数据。增加协议成本,增加反序列化成本。现在是20秒。这是硬件限制。当然,您可能会获得10Gb / s的链接。甚至以20Gb / s的速率复用。但这是吗?真正的解决方案是将这些数据分成几部分,仅执行部分更新。

对于主题:使用String(基本)类型,没有选项。其他类型是复杂的结构,您只需要一个值。