Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 影响读取性能的Redis备份_Performance_Redis_Amazon Elasticache_Redis Cluster - Fatal编程技术网

Performance 影响读取性能的Redis备份

Performance 影响读取性能的Redis备份,performance,redis,amazon-elasticache,redis-cluster,Performance,Redis,Amazon Elasticache,Redis Cluster,Redis cluster(AWS中的版本>2.8.22)的读取性能最近受到定期快照/备份的影响。我发现在创建redis备份时,读取操作的延迟(或超时)会增加 根据AWS docs Redis Backup(版本>2.8.22)的规定,当有足够的内存可用于创建快照时,旋转子进程(在副本中)。因此,这意味着当没有足够的内存可用时,redis不会分叉(创建快照)过程 所以,我的问题是Redis有多少足够的内存来启动子进程来创建备份 有没有办法知道我的Redis集群中的副本是否正在派生子进程来创建备

Redis cluster(AWS中的版本>2.8.22)的读取性能最近受到定期快照/备份的影响。我发现在创建redis备份时,读取操作的延迟(或超时)会增加

根据AWS docs Redis Backup(版本>2.8.22)的规定,当有足够的内存可用于创建快照时,旋转子进程(在副本中)。因此,这意味着当没有足够的内存可用时,redis不会分叉(创建快照)过程

  • 所以,我的问题是Redis有多少足够的内存来启动子进程来创建备份
  • 有没有办法知道我的Redis集群中的副本是否正在派生子进程来创建备份
  • 在创建备份时,我的Redis副本拥有大约15-20%的可用内存。这是否足以不影响读取性能
我们采取了一些措施来缓解该问题:

  • 增加副本的数量
  • 增加保留内存(至10%)
  • 但是,这两个步骤并没有缓解问题

    增加保留内存是否有助于提高读取性能?。根据AWS文档()的规定,保留内存有助于不影响写入性能

    我想的另一个解决方法是向集群添加一个新的碎片。添加新的碎片将增加每个副本的可用/可用内存,因此(理论上)总是保证子进程的分叉以创建快照

    但是,我们也不希望集群中有太多的碎片,因为太多的碎片可能会降低当前的读取性能


    那么,是否还有其他步骤可以使快照/备份的创建不影响读取性能?

    有帮助吗?“如果您在写容量非常大的应用程序中使用Redis,在磁盘上保存RDB文件或重写AOF日志时,Redis可能会占用高达2倍的内存”,感谢链接。对于写容量较大的集群,建议使用的内存似乎是原来的两倍。在备份窗口期间,我的写操作不是很繁重。在备份期间,我对整个集群的写入速率小于80-100项。所以,我认为应该还有其他原因。在这一点上,我只看到15-20%的可用内存,我认为这在集群中没有太多写入时应该足够了。@barath将内存增加两倍是否有助于解决问题???@NeiL我现在从这个产品开始,所以没有当前的工作解决方案。但在那个时候,是的,更多空闲内存的可用性是我们遵循的解决方案。有帮助吗?“如果您在写容量非常大的应用程序中使用Redis,在磁盘上保存RDB文件或重写AOF日志时,Redis可能会占用高达2倍的内存”,感谢链接。对于写容量较大的集群,建议使用的内存似乎是原来的两倍。在备份窗口期间,我的写操作不是很繁重。在备份期间,我对整个集群的写入速率小于80-100项。所以,我认为应该还有其他原因。在这一点上,我只看到15-20%的可用内存,我认为这在集群中没有太多写入时应该足够了。@barath将内存增加两倍是否有助于解决问题???@NeiL我现在从这个产品开始,所以没有当前的工作解决方案。但在当时,是的,更多可用内存是我们遵循的解决方案。