从redis获取大数据很慢

我是 Redis 的新手,所以如果这是一个愚蠢的问题,我深表歉意。我正在使用Java将数据保存到redis。当我保存小数据时,一切都很顺利。但是,当保存并获取地图时(地图有两万多个键值,我使用spring-data-redis来保存这张地图,我使用'redisTemplate.opsForHash().putAll()'),我需要将近 2 秒来保存或获取它。

地图在redis上使用20M空间,我用游标获取。这个数据是不是太大了,还是网络问题?

我需要获取整个地图数据,我该怎么办?


慕斯王
浏览 1063回答 2
2回答

侃侃尔雅

您应该考虑避免此类活动。Redis 并不是为了在键中保存如此多的数据而设计的。你可以尝试 gzip 它,我认为它会有所帮助。请记住,Redis 仅在 1 个线程上工作,因此他一次只执行 1 个操作。这意味着当他忙时,其他操作正在等待轮到他们。它可能对可扩展性和性能产生巨大影响。

万千封印

也许您可以考虑对大地图进行分片,或保存压缩的二进制数据。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java