Redis 复制和客户端输出缓冲区限制

2023-11-24

我遇到了 redis 复制问题,我无法弄清楚。 Master 不断达到客户端输出缓冲区限制。

主控配置:

# redis-cli -p 6380 config get client-output-buffer-limit
1) "client-output-buffer-limit"
2) "normal 0 0 0 slave 536870912 536870912 0 pubsub 33554432 8388608 60"

主日志:

Client id=3014598 addr={{MASTER}} fd=6 name= age=217 idle=217 flags=S db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=3723 oll=4806 omem=581952061 events=rw cmd=psync scheduled to be closed ASAP for overcoming of output buffer limits.

大师信息:

# redis-cli -p 6380 info
role:master
connected_slaves:1
slave0:ip={{SLAVE_IP}},port=6380,state=wait_bgsave,offset=0,lag=0  //  stays on wait_bgsave

从属信息:

role:slave
master_host:{{MASTER_IP}}
master_port:6380
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:1

Redis版本:3.0.2

数据库大小:~21GB Master 是一个 30GB Ram EC2 实例 Slave是一个60GB Ram EC2实例

从设备正在连接,但是无论我将缓冲区设置得有多高,主设备总是超时。 master几乎总是处于wait_bgsave状态。

任何人都可以深入了解为什么会发生这种情况吗?


尝试为复制创建 RDB 转储文件时可能会出现问题。它可能没有足够的 RAM 来创建文件,或者可能存在从属设备无法足够快地读取传入数据的问题,因此它会断开连接。
您可以通过在 redis-cli 上发出 bgsave 来检查它是否成功,并检查redis.conf对于客户端输出缓冲区限制部分。对于解决方法,您可以尝试新的无盘复制,它可能需要更少的 RAM 来完成它(尽管我从未找到任何文档这么说)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Redis 复制和客户端输出缓冲区限制 的相关文章

  • 如何使redis中的“HSET”子键“过期”?

    我需要使 Redis 哈希中所有超过 1 个月的密钥过期 这不可能 https github com antirez redis issues 167 issuecomment 2559040 为了保持 Redis 简单 https git
  • 如何使 Redis 缓存中数据层次结构(树)的部分内容无效

    我有一些产品数据 需要在 Redis 缓存中存储多个版本 数据由 JSON 序列化对象组成 获取普通 基本 数据的过程很昂贵 将其定制为不同版本的过程也很昂贵 因此我想缓存所有版本以尽可能进行优化 数据结构看起来像这样 BaseProduc
  • StackExchange.Redis Get 函数抛出 TimeoutException

    我在用着StackExchange Redis与 C 和StackExchangeRedisCacheClient Get函数抛出以下异常 myCacheClient Database StringGet txtKey Text myCac
  • 使用redis进行树形数据结构

    我需要为基于树的键值开发一个缓存系统 与Windows注册表编辑器非常相似 其中缓存键是字符串 表示树中到值的路径 可以是原始类型 int string bool double 等 或子树本身 例如 key root x y z w val
  • Cassandra - 选择而不复制

    假设我创建了一个键空间和表 CREATE KEYSPACE IF NOT EXISTS keyspace rep 0 WITH replication class SimpleStrategy replication factor 0 CR
  • Laravel Redis 配置

    我目前正在使用 Laravel 和 Redis 创建一个应用程序 几乎一切都工作正常 我按照文档中的说明扩展了身份验证 用户可以订阅 登录 注销 我可以创建内容 所有内容都存储在 Redis 中 但我有一个问题 我无法运行 php arti
  • 为什么单个 Redis 实例不是线程安全的?

    https github com xetorthio jedis wiki Getting started https github com xetorthio jedis wiki Getting started 在多线程环境中使用Jed
  • 集合成员的 TTL

    Redis 是否可以不为特定键而是为集合的成员设置 TTL 生存时间 我正在使用 Redis 文档提出的标签结构 数据是简单的键值对 标签是包含与每个标签对应的键的集合 例如 gt SETEX id id 1 100 Lorem ipsum
  • 使用 Redis 中的键

    我是 Redis 和键值数据库的新手 你能告诉我如何在redis中正确实现这种关系方法吗 我有一个关系表 其中两个键对应一个值 master id slave id 价值 Example 主站 ID 从属ID 价值 1 1 值1 2 1 值
  • nginx/uwsgi 服务器的持久内存中 Python 对象

    我怀疑这是否可能 但这是问题和提出的解决方案 提出的解决方案的可行性是这个问题的对象 我有一些需要可用于所有请求的 全局数据 我将这些数据保存到 Riak 并使用 Redis 作为缓存层以提高访问速度 目前 数据被分为约 30 个逻辑块 每
  • redis能完全取代mysql吗?

    简单的问题 我是否可以使用 redis 而不是 mysql 来处理各种 Web 应用程序 社交网络 地理位置服务等 IT 领域没有什么是不可能的 但有些事情可能会变得极其复杂 将键值存储用于全文搜索之类的事情可能会非常痛苦 另外 据我所知
  • redis.exceptions.ConnectionError:连接到本地主机时出现错误-2:6379。名称或服务未知

    当我在服务器中运行代码时出现此错误 我的环境是 debian 并且Python2 7 3 Traceback most recent call last File fetcher py line 4 in
  • Redis 客户端忽略其上设置的配置选项并尝试连接到默认 IP 127.0.01

    在AWS中 我使用ElastiCache Redis服务器并使用节点作为后端和 promise redis 包 这就是我尝试连接到我的 redis 服务器端点的方法 client redis createClient host my red
  • Microsoft.Extensions.Caching.Redis 选择与 db0 不同的数据库

    一个关于了解使用哪个redis数据库以及如何配置它的问题 我有一个默认值ASP NET Core Web 应用程序和默认配置的本地redis服务器 含15个数据库 通过包管理控制台我已经安装了 Install Package Microso
  • 为什么Redis SET性能优于GET?

    根据Redis基准 http redis io topics benchmarkss Redis 可以执行 100 000 SET 操作 秒和 80 000 GET 操作 秒 Redis 是一种内存数据库 这似乎令人惊讶 因为通常人们会认为
  • 如何按键中的值对 Redis 哈希进行排序

    Redis 有没有一种好方法来获取按值排序的哈希中的键 我查看了文档 但没有找到直接的方法 另外有人可以解释一下redis中的排序是如何实现的 以及什么吗 本文档 http redis io commands SORT using hash
  • 如何暂停或恢复 celery 任务?

    我的项目中有一项要求 客户可以暂停或恢复正在挂起的流程 而不是流程流程 我在用网络套接字显示芹菜任务结果 但在暂停 恢复时我不明白如何设计代码 我想到的唯一方法就是revoke暂停请求中的任务 同时保留数据撤销的过程在缓存中 并稍后在res
  • Flask-SocketIO redis 订阅

    我在用着https github com miguelgrinberg Flask SocketIO https github com miguelgrinberg Flask SocketIO实现 WebSocket 服务器 我需要从另一
  • Spring-boot中将redis-cache反序列化为对象的问题

    我在 Client 类中使用 JsonNode 来处理 MySQL 8 数据库中 JSON 类型的字段 即使对于 API 请求 它也能很好地工作 但是当我使用 Redis 启用缓存 我确实需要它 时 我注意到 Redis 无法序列化 Jso
  • pymongo MongoClient 连接到 ReplicaSet

    我采用 pymongo 的 MongoClient 类来连接到具有三个节点 1 个主节点 2 个辅助节点 的副本集 代码片段如下 c MongoClient secondary1 hostname secondary2 hostname r

随机推荐

  • Postgresql 中 SQL Server 的“stuff”和“for xml path('')”

    我正在将一些 SQL Server 2008R2 查询迁移到 Postgresql 9 0 但遇到了一些问题 这是 SQL Server 查询 stuff select p NAME as data from BPROVIDERS PROV
  • Android 网络库的比较:OkHTTP、Retrofit 和 Volley [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 一位正在学习 Android 的 iOS 开发人员提出的问题分为两部分 在iOS上我用过AF网络项目广泛 Android 有等效的库吗 我读过OkH
  • Firestore如何存储对文档的引用/如何检索它?

    我是 Firestore Firebase 的新手 我正在尝试创建一个新文档 其中一个字段是document reference到其他文档 我已阅读 Firebase 的所有指南和示例 但没有找到任何内容 另外 当我检索我创建的文档时 我将
  • 使用 webpack 2 和 vue-cli 加载本地字体

    我正在使用 vue cli webpack 模板 并尝试在我的项目中加载本地字体 我无法正确获取字体路径 我的道路应该是什么样子 我发现了一些关于我可能做错了什么的信息 但我无法弄清楚 https github com webpack co
  • 从 RGB 值数组中(就地)切片平面的算法

    我有一个字节 RGB 值的平面数组R1 G1 B1 R2 G2 B2 R3 G3 B3 Rn Gn Bn 所以我的数据看起来像 char imageData WIDTH HEIGHT 3 但我想将 WIDTH HEIGHT 数组传递给需要该
  • 带有类加载器的 Java 示例

    我有一个小问题 我学习java SE并找到类ClassLoader 我尝试在下面的代码中使用它 我正在尝试使用 URLClassLoader 在运行时动态加载类 URLClassLoader urlcl new URLClassLoader
  • 正则表达式选择引号之外的字符

    我想找到一个正则表达式来挑选出引号集之外的所有逗号 例如 foo gt bar foofoo gt bar bar 这将在第 1 行之后挑选出单个逗号 bar 我真的不关心单引号和双引号 有人有什么想法吗 我觉得预读应该可以做到这一点 但我
  • PHP 中 Skype 名称的正则表达式

    我想在 PHP 中使用正则表达式验证 Skype 名称 NOTE 它必须介于 6 32 个字符之间 以字母开头 并且仅包含字母和数字 不含空格或特殊字符 这个模式应该适合你 a zA Z a zA Z0 9 5 31 这将匹配一个前导字母
  • VBA 中作为类成员的类对象数组

    我正在用 VBA 编写一个 Excel 宏 向图书馆顾客发送电子邮件 提醒他们逾期的资料 数据来自电子表格 其中包含以下数据 UserID Name Email Title Author Barcode Call Number Borrow
  • 有没有办法使用 doxygen 记录 cuda 的“.cu”文件

    由于cuda的 cu 文件基本上是c 有没有办法我们可以使用doxygen为 cu 文件生成文档 我注意到 NVIDIA 使用 doxygen 来生成 cuda 的文档 但是 当我使用 doxygen 时 cu 文件将被忽略 如果其他人也遇
  • 对多个字段中的值进行计数

    我正在尝试计算一组具有多个字段的对象的不同值 e g 对象文章有很多标签对象字段 一篇文章有 标签 tag1 tag2 另一篇文章有 标签 tag2 tag3 我想找出一些可以返回以下内容的东西 标签1 1 标签2 2 标签3 1 我以为我
  • NUnit 与 Assert.AreEqual 不能很好地配合

    我对单元测试尤其是 NIt 很陌生 我只是从书中输入一些涉及 Java 和 JUnit 的示例 但我改用 C 问题是 我有一个带有重写方法的类 例如Equals and GetHashCode 但是当我尝试将此类的两个对象与Assert A
  • 为 Mac 安装 ext-zip

    我正在尝试跑步composer update我收到以下错误 Problem 1 The requested PHP extension ext zip is missing from your system Install or enabl
  • 如何阻止 R 加载包?

    我正在使用 R 中的多核包来并行化我的代码 但是 如果加载了 tcltk 包 则使用多核包分叉进程将导致 R 无限期挂起 所以我想阻止 tcltk 加载 如果任何包尝试将其作为依赖项加载 我希望立即出现错误 这可能吗 或者 我可以unloa
  • 为 jinja2 中未定义的属性引发异常

    我需要以下内容来引发异常 jinja2 Template Hello a x render a Jinja2 默默地返回一个空字符串a x 所以这呈现为 Hello 如何让 jinja2 对未定义的属性引发异常 from jinja2 im
  • 在 Javascript 中进行长时间运行的计算时如何避免冻结浏览器

    我有一个网页 其中函数中的 JavaScript 计算需要花费大量时间才能完成 并使页面冻结 当计算在后台进行时 我应该使用什么技术来确保 javascript 不会冻结浏览器 如果您只需要进行计算并且不需要在长时间运行的计算过程中访问 D
  • 如何在平面索引数组中复制值? (将所有元素按顺序追加到数组末尾)

    假设我有这段代码 x array a b c d e 有没有我可以在创建后调用的函数来复制值 所以在上面的示例中 x会成为 array a b c d e a b c d e 我想了类似下面的东西 但它不起作用 x x x x array
  • LINQ to Entities - 动态选择指定列

    我可以创建一个选择查询 仅检索 LINQ to 实体的特定列 代码中的静态 from Example in new Enities Table select new Example Column1 Example Column2 但我不知道
  • 在数据库中存储十六进制和十六进制字符的最佳数据类型

    我正在使用以太坊 API 我想将来自 api 的信息存储到 mysql 表中 地址数据如下所示 0x3f5ce5fbfe3e9af3971dd833d26ba9b5c936f0be 0x1d80982502f3bb75654df13aa32
  • Redis 复制和客户端输出缓冲区限制

    我遇到了 redis 复制问题 我无法弄清楚 Master 不断达到客户端输出缓冲区限制 主控配置 redis cli p 6380 config get client output buffer limit 1 client output