gpt4 book ai didi

Redis 集群实例比独立实例消耗更多内存?

转载 作者:可可西里 更新时间:2023-11-01 11:13:02 26 4
gpt4 key购买 nike

在我们的redis集群中,

  • 主节点(redis 3.2.7 和 jemalloc 3.6.0,使用 yum 安装,黄线)使用了 2.240G 内存
  • 一个slave节点(redis 3.2.7,jemalloc 3.6.0,使用yum安装,青色线)使用1.735G内存
  • 一个slave节点(redis 3.2.9,jemalloc 4.0.3,源码编译,橙线)占用内存1.531G
  • 一个独立的 slave(redis 3.2.9 和 jemalloc 4.0.3,从源代码编译,绿线)使用了 1.008G 内存

使用更新版本的内存分配器可以节省大约 12% 的内存。这很容易理解。但是,是什么导致集群从节点的内存使用量比独立实例多 50%?

enter image description here

最佳答案

Redis 集群使用内部表,将集群中的每个键映射到其指定的槽,这增加了开销。

您拥有的 key 越多,开销就越大。因此,特别是如果您有许多小键,这会非常明显,甚至会减慢向 RDB 保存数据和从 RDB 加载数据的速度。

在 Redis 4.0 中,保存这些键的数据结构已经过优化,以减少内存并提高速度。供引用 - https://github.com/antirez/redis/issues/3800

关于Redis 集群实例比独立实例消耗更多内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44402358/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com