当前位置: 首页 > 知识库问答 >
问题:

Redis复制大数据到新从机

宣胜
2023-03-14

原因是:

 client-output-buffer-limit slave 256mb 64mb 60

这是在主服务器上设置的,由于最大内存不可用,它会中断新从服务器的复制。我看到这个问题Redis复制和客户机输出缓冲区限制,类似的问题正在讨论,但我有一个更广泛的问题范围。

我们不能用很多内存。那么,在这种情况下,有什么可能的方法来进行复制,以防止主服务器上的任何失败(WRT.内存和延迟影响)

共有1个答案

傅星光
2023-03-14

您会出现这个问题,因为您的副本速度很慢,它无法按需要以最快速度读取复制数据。

为了解决这个问题,可以尝试增加client-output-buffer-limit缓冲区限制。此外,您还可以尝试在副本服务器与主服务器同步时禁用它的持久性,并在此之后启用持久性。通过禁用持久性,replica可能会更快地使用数据。但是,如果主服务器和副本服务器之间的带宽很小,您可能需要考虑重新部署副本服务器,使其靠近主服务器,并具有较大的带宽。

1-我应该做无盘复制-这会对写和读的延迟有什么影响吗?

IMHO,我认为这与无盘复制无关。

2-我是否应该将转储文件从另一个从复制到这个新的从并重新启动Redis。?那行得通吗。

不,这行不通。

3-是否应该将输出缓冲区限制从机增加到更大的限制?如果是,那么多少钱?我想这样做一段时间,直到复制发生,然后恢复到正常设置?

是的,你可以试着提高限额。在您的情况下,由于您的数据大小是30G,所以30G的硬性限制应该会解决问题。然而,这太多了,可能会产生其他影响。您需要做一些基准测试来获得一个正确的限制。

 类似资料:
  • 问题 主Redis DB设置信息 我有一个在10.1.1.1上运行的主程序。配置设置为“保存”到磁盘。下面是配置文件的一个片段: 当我对所讨论的散列运行扫描命令时,以下是结果(正确): 下面是我在slave 1中的数据:(缺少一条记录) 当我在这个从属程序上运行“info”命令时,我得到的结果是:(只选择了我认为可能与此问题有关的特定项) 从机2设置 这是我使用REDIS的第一次尝试,所以我肯定我

  • 问题内容: 有没有一种方法可以使用Redis刷新Redis数据库? 我正在寻找类似或 问题答案: Redis-py实际上具有以下功能:

  • 问题内容: 一台服务器上的应用程序查询在另一台服务器上运行的redis。来自查询的结果数据集大约为25万,在应用服务器上似乎需要40秒。 在redis服务器或app服务器上使用命令执行命令时,在两种情况下,它们都需要大约40秒才能完成,如所述。 在查询期间,redis服务器使用大约15%的CPU。 问题: 花费40秒检索250k记录是否很慢?是否有可能将其加速到几秒钟? 问题答案: 首先,它取决于

  • 我一直在试图找到一个连接器,将数据从Redis读取到Flink。Flink的文档中包含了要写入Redis的连接器的描述。在我的Flink工作中,我需要从Redis读取数据。在使用ApacheFlink进行数据流传输时,Fabian提到可以从Redis读取数据。可用于此目的的接头是什么?

  • 本文向大家介绍Redis主从复制详解,包括了Redis主从复制详解的使用技巧和注意事项,需要的朋友参考一下 单机Redis存在的问题 无法故障转移 ,无法避免单点故障 磁盘空间的瓶颈 QPS瓶颈 Redis主从复制的作用 提供数据副本 扩展读性能 配置方法 通过命令 通过配置文件 演示 为方便演示,在一台服务器上搭建redis主从(生产上不会这样做),根据端口区分。 主库 6379 从库 6380

  • 问题内容: 我不需要丢失Redis上的任何数据,并且它具有较高的写入请求,因此我不能使用AOF持久性。RDB可以帮到您,但也许有可能丢失上次备份中的某些数据。 现在,我将复制视为备份,因此当主服务器崩溃,重新启动或发生其他任何事情时,我已经同步了从属服务器中的数据并可以再次还原它。 现在有什么办法可以将master设置为slave,并在崩溃时自动将slave设置为master,然后将它们同步? 问