首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Redis在Sentinel Slave上错误的"used_memory_human“

Redis是一个开源的内存数据存储系统,常用于缓存、消息队列、实时分析等场景。它支持多种数据结构,如字符串、哈希表、列表、集合和有序集合,并提供了丰富的操作命令。

在Redis中,"used_memory_human"是一个用于表示Redis实例当前占用内存的指标。它以人类可读的方式展示内存大小,例如"1.5G"或"500M"。然而,在Sentinel Slave上出现"used_memory_human"错误可能是由以下原因导致:

  1. Redis版本不兼容:不同版本的Redis可能对"used_memory_human"指标的支持有所不同。建议使用最新版本的Redis,并确保Sentinel Slave上的Redis版本与主节点保持一致。
  2. 配置错误:检查Sentinel Slave上的Redis配置文件,确保配置正确。特别是检查"maxmemory"参数,它用于限制Redis实例使用的最大内存量。如果"maxmemory"设置过小,可能导致"used_memory_human"错误。
  3. 内存泄漏:Redis在处理大量数据或长时间运行时可能会出现内存泄漏问题。检查Redis日志以查找任何与内存相关的错误或警告信息。如果发现内存泄漏问题,可以尝试升级Redis版本或优化Redis配置。

对于解决这个问题,可以采取以下措施:

  1. 更新Redis版本:确保使用最新版本的Redis,并遵循官方文档中的升级指南。
  2. 检查配置文件:仔细检查Sentinel Slave上的Redis配置文件,确保所有配置参数正确设置,并特别关注"maxmemory"参数。
  3. 监控内存使用:使用Redis的监控工具,如Redis Monitor或Redis CLI,实时监测Redis实例的内存使用情况。如果发现异常,及时采取措施解决问题。
  4. 优化数据结构:根据实际需求,合理选择和使用Redis的数据结构,避免不必要的内存占用。
  5. 定期重启Redis:定期重启Redis实例可以释放内存并清理可能存在的内存泄漏问题。

腾讯云提供了云原生数据库TencentDB for Redis,它是基于Redis开发的高性能、高可靠性的分布式数据库服务。您可以通过腾讯云控制台或API创建和管理TencentDB for Redis实例,享受腾讯云提供的稳定、安全的云计算服务。

更多关于TencentDB for Redis的信息,请访问腾讯云官方网站:TencentDB for Redis

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

jenkins动态slavek8s实践

Volume 上去,Slave 运行在各个节点,并且它不是一直处于运行状态,它会按照需求动态创建并自动删除。...会根据每个资源使用情况,动态分配 Slave 到空闲节点创建,降低出现因某节点资源利用率高,还排队等待在该节点情况。...,对于后面执行 Job 时候需要用到该值,然后我们这里使用是 cnych/jenkins:jnlp 这个镜像,这个镜像是官方 jnlp 镜像基础定制,加入了 kubectl 等一些实用工具...另外一些同学配置了后运行 Slave Pod 时候出现了权限问题,因为 Jenkins Slave Pod 中没有配置权限,所以需要配置 ServiceAccount, Slave Pod 配置地方点击下面的高级...还有一些同学配置完成后发现启动 Jenkins Slave Pod 时候,出现 Slave Pod 连接不,然后尝试100次连接之后销毁 Pod,然后会再创建一个 Slave Pod 继续尝试连接

3.5K51

子弹短信内部技术分享:Redis

高可用 Redis 通过哨兵(Sentinel)与复制方式实现了高可用 复制 通过 redis.conf 文件中配置「slaveof ip port」或给运行中 redis 节点执行命令「slaveof...Redis 通过 Sentinel 来实现节点监控与协调,Sentinel 是一个特殊 Redis 节点,需要启动时指定参数 --sentinelsentinel.conf 配置文件,并在配置文件中指定主节点...对 Sentinel 详细介绍,可以见:https://redis.io/topics/sentinel ,以及参考《Redis 设计与实现(第二版)》....集群 Redis 因为是内存型数据库,存储空间容易捉襟见肘,于是产生了许多扩容方案。 客户端分片 如 ShardedJedis,通过客户端对 key 进行 hash,再分给指定节点。...如 JedisCluster,每次请求前会拉取节点 cluster info 来计算应该到哪个节点请求,并需要对错误节点返回 ASK 消息做相应处理。由此产生问题是 每次操作最少请求两次。

1K20
  • 线上问题排查,Redis 频繁重连...

    然后给主节点(master) set 一个 dummy key,看是否规定时间内能同步到从节点(slave)。...,进行全量数据同步时候 也就是说,当数据集(dataset)还未被全部加载进内存中时,如果客户端给 Redis 发送命令,则会收到上述错误提示。...连上告警节点,执行 INFO MEMORY,连续几次关键信息如下: redis> info memory # Memory used_memory_human:53.27M used_memory_peak_human...总结 又是一个深刻教训:线上出问题,很多时候与新 feature 有关。用 Redis Cluster 做缓存时要谨防 Big Key 出现,尽量将 Key 打散各个节点中。...产线服务需要配置好全方位监控,合理监控可以真正严重问题出现之前就给予告警。 关于我:Tom哥,前阿里P7技术专家,出过专利,多年大厂实战经验。

    1K10

    redis 哨兵机制

    192.168.171.152 Redisslave) 注:需要保证各个节点redis服务正常运行,关于部署redis可以参考博文:Redis 5.0部署 配置主从复制 两台slave节点执行以下命令...,指定主机redis01为master 127.0.0.1:6379> slaveof 192.168.171.151 6379 redis01主机上查看连接slave 127.0.0.1:6379...若要了解主从复制更多原理,可以参考博文:redis主从复制详解 配置Sentinel节点 以下操作在其中一个节点进行即可(我这里redis01节点)。...命令回复,或者返回一个错误,那么sentinel将这个服务器标记为主观下线。...服务器对 PING 命令有效回复可以是以下三种回复其中一种: 返回 +PONG 。 返回 -LOADING 错误。 返回 -MASTERDOWN 错误

    52420

    Redis Sentinel 高可用机制

    Redis Sentinel 目标是通过3个功能来管理 Redis: 监控 Redis 健康情况 出现错误后发送通知,例如通知客户端 自动创建一个新 master 并执行故障转移 如何工作?...有3个 sentinel 运行在应用服务器。 ? 这时,A 宕了,被一个 sentinel 发现了,发出了 SDOWN 消息,之后,其他 sentinel 也发现了,那么 ODOWN 消息被发出。...sentinel 选择新 master 原则: 首先判断优先级,选择优先级较小 优先级是配置文件中配置,默认为 100。...如果复制下标也相同,就选择 runid 小 每个 Redis 实例都会有一个 runid,是启动时设置随机字符串。 sentinel 有多个,具体谁来执行故障转移?...通过上面的配置文件可以发现,只配置了 Redis master 地址,并没有配置 slave 和其他 sentinel 地址。 那是怎么知道呢?

    48510

    CentOS6 脚本自动安装redis sentinel

    脚本自动安装redis sentinel(同一台服务器) #!...这样slave离线时候,不需要完全复制master数据,如果可以执行部分同步,只需要把缓冲区部分数据复制给slave,就能恢复正常复制状态。...#noeviction:不移除任何key,只是返回一个写错误。 #上面的这些驱逐策略,如果redis没有合适key驱逐,对于写命令,还是会返回错误redis将不再接收写请求,只接收get请求。...10 #masterslave数量大于该值,slave才能迁移到其他孤立master,如这个参数若被设为2,那么只有当一个主节点拥有2 个可工作从节点时,它一个从节点会尝试迁移。...#部分key所在节点不可用时,如果此参数设置为”yes”(默认值), 则整个集群停止接受操作;如果此参数设置为”no”,则集群依然为可达节点key提供读操作 #cluster-require-full-coverage

    98970

    浅析redis主从、哨兵和Cluster

    复制(replication) 说明 Redis 复制基础,使用和配置主从复制非常简单,能使得从 Redis 服务器(下文称 slave)能精确复制主 Redis 服务器(下文称 master...虽然 Redis Sentinel 释出为一个单独可执行文件 redis-sentinel , 但实际它只是一个运行在特殊模式下 Redis 服务器, 你可以启动一个普通 Redis 服务器时通过给定...主服务器或从服务器机器运行 Redis Sentinel 进程。...Redis集群并不支持处理多个keys命令,因为这需要在不同节点间移动数据,从而达不到像Redis那样性能,高负载情况下可能会导致不可预料错误....比如说, 集群可能会错误地将 example.rb 发送所有 SET 命令都改成了 SET foo 42 , 但因为 example.rb 并不检查写入后值, 所以它不会意识到集群实际写入值是错误

    2.1K20

    Redis Sentinel实现机制与原理详解

    序言 Redis-SentinelRedis官方推荐高可用性(HA)解决方案。实际这意味着你可以使用Sentinel模式创建一个可以不用人为干预而应对各种故障Redis部署。...不稳定版本分支执行新改进,且有时一些新特性一旦被认为是稳定就会被移植到Redis2.8和Redis3.0分支中。...你客户端要支持哨兵,流行客户端都支持哨兵,但不是全部。 没有HA设置是安全,如果你不经常开发环境测试,在生产环境他们会更好。你可能会有一个明显错误配置只是当太晚时候。...master发送心跳PING来确认master是否存活,如果master“一定时间范围”内不回应PONG 或者是回复了一个错误消息,那么这个sentinel会主观地认为这个master已经不可用了。...例三:Sentinel客户端盒子里 有时我们只有两个Redis盒子可用,一个master和一个slave

    50010

    Redis详解(九)------ 哨兵(Sentinel)模式详解

    另外还可以进行如下测试:可以主服务器添加一条数据,然后看看从服务器是否能够查到该数据. ③、问题 如果对于上面的测试,主服务器添加数据,从服务器无法查询到,可以查看前面配置目录/opt.../redis/data 日志文件,有一种错误如下: ?   ...这是由于主服务器设置了登录密码,从服务器向主服务器进行数据同步复制时,由于不知道主服务器密码,导致连接不,从而无法进行同步.   ...二.masterauth   针对master对应slave节点设置slave节点数据同步时候用到。   ...  这里贴一下主要测试代码:   PS:实际springboot已经为我们注入了RedisTemplate,我们实际项目中不用写像下面代码这么麻烦,这样写是为了详细表明连接步骤. //1.设置

    1.7K10

    Redis 高可用性解决方案之哨兵与集群

    前言 开始本章讲解之前,我们首先从宏观角度回顾一下 Redis 实现高可用相关技术。它们包括:持久化、复制、哨兵和集群,本系列前篇文章介绍了持久化以及复制原理以及实现。...由于本人没有这么多服务器,因此一台机器模拟一个 Redis Sentinel 集群。...MOVED 错误表示槽负责权已经从一个节点转移到了另外一个节点,而 ASK 错误只是两个节点在迁移槽过程中使用一种临时措施。...由于资源有限,因此一台机器模拟一个 Redis Cluster。...领头 SentinelSentinel 系统选举领头 Sentinel 方式是对 Raft 算法领头选举方法实现,Raft 算法是一个共识算法,是工程使用较为广泛强一致性、去中心化、高可用分布式协议

    72840

    Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)

    主观下线就是说如果服务器down-after-milliseconds给定毫秒数之内, 没有返回 Sentinel 发送 PING 命令回复, 或者返回一个错误, 那么 Sentinel 将这个服务器标记为主观下线...Sentinel支持集群(可以部署多台机器,也可以一台物理机上通过多端口实现伪集群部署) 很显然,只使用单个sentinel进程来监控redis集群是不可靠,当sentinel进程宕掉后(sentinel...主服务器或从服务器机器运行 Redis Sentinel 进程。...redis-server无法"down-after-milliseconds"时间内响应或者响应错误信息,都会被认为此redis-server处于SDOWN状态。...a)redis服务器各自存在一个Sentinel,监控本机redis运行情况,并通知给闭路环其它redis节点; b)当master发生异常(例如:宕机和断电等)导致不可运行时,Sentinel

    4.2K20

    (六)Redis全体系:Redis主从复制和集群分片,老鸟必经之路!

    借助Redis主从复制,可以实现读写分离和高可用: 实时性要求不是特别高读请求,可以Slave完成,提升效率。...后,Redis Sentinel能够自动将一个Slave晋升为Master,继续提供服务 启用主从复制非常简单,只需要配置多个Redis实例,作为SlaveRedis实例中配置: slaveof 192.168.1.1...Redis Cluster能力 能够自动将数据分散多个节点 当访问key不在当前分片时,能够自动将请求转发至正确分片 当集群中部分节点失效时仍能提供服务 其中第三点是基于主从复制来实现Redis...使用Redis Cluster时,pipelining、事务和LUA Script功能涉及key必须在同一个数据分片,否则将会返回错误。...但是Redis不支持跨分片事务,事务和LUA Script还是必须遵循所有key一个分片规则要求。

    30410

    Redis Sentinel 学习笔记

    Redis-Sentinel简介 Redis-SentinelRedis官方推荐针对主从结构高可用性解决方案,当master不可用,sentinel能监控多个master-slave集群,发现...sentinel down-after-milliseconds mymaster 30000 #发生failover主备切换时,这个选项指定了最多可以有多少个slave同时对新master进行同步...默认180秒,即3minutes. sentinel failover-timeout mymaster 180000 #设置连master和slaves验证密码,监控redis实例时很有用 #sentinel...具体sentinel工作机制下一篇文章具体分析。 启动老主库之后,sentinel会将redis 添加为 10.215.20.19 6379slave。...6379 切换过程对主库不可用探测时间比较久,这点在生产可以调整sentinel配置,缩短判断不可用时间长度,达到快速切换目的。

    64720

    Redis主从、哨兵、集群

    【rdb文件】 2、从服务只能执行读操作【拷贝主服务rdb】 第一种: 主服务器和从服务同一台机器上面 第二种: 主服务器和从服务不同机器上面(生成环境下面) 哨兵 1、哨兵配置文件 sentinel.conf...是3,那么一次性就会把所有slave挂接到新master上去 failover-timeout,执行故障转移timeout超时时长 2、eshop-cache03再部署一个redis 只要安装redis...&& make test make install 2、正式配置 哨兵默认用26379端口,默认不能跟其他机器指定端口连通,只能在本地访问 // redis源文件中拷贝sentinel.conf.../sentinel-26739.conf root@192.168.3.221:/usr/local/redis/6380/ 3、启动哨兵进程 在三台机器,分别启动三个哨兵进程,组成一个集群,观察一下日志输出...执行,清理所有的master状态 (3)SENTINEL MASTER mastername,在所有sentinal执行,查看所有sentinal对数量是否达成了一致 2、slave永久下线 让master

    54330

    redis-sentinel主从复制高可用

    Redis-Sentinel Redis-Sentinelredis官方推荐高可用性解决方案, 当用redis作master-slave高可用时,如果master本身宕机,redis本身或者客户端都没有实现主从切换功能...,就会选举一个sentinel节点来完成自动故障转义 master-slave进行切换后,master_redis.conf、slave_redis.conf和sentinel.conf内容都会发生改变...ODOWN只适用于Master,对于Slave Redis 实例,Sentinel 将它们判断为下线前不需要进行协商, 所以Slave Sentinel 永远不会达到ODOWN。...PONG 确定主从关系 主节点查看主从通信关系 [root@master ~]# redis-cli -p 6379 info replication # Replication role:master...,slave查看数据,此时主从复制配置完成 开始配置Redis Sentinel 超哥实验环境是单独一台linux,192.168.119.10 [root@master tmp]# ll /etc

    70920

    redis sentinel 工作原理

    一 前言 一篇文章讲述了 sentinel 安装实践和failover 切换测试,本文继续深入了解 redis sentilnel工作原理。...数据节点:即redis节点,包含主从节点。 2.2 Sentinel 机制 redis使用(sentinel)工作原理是: redis使用一组sentinel节点来监控主从redis服务可用性。...向数据节点做心跳探测 sentinel节点每隔1秒向redis节点发送ping命令来检测实例状态,如果在指定时间内(down-after-milliseconds)没有回复或则返回错误回复,那么该实例被判为下线...如果一个sentinel节点收到了半数以上同意票,则成为sentinel领导者。 如果前面三步一定时间内都没有选出一个sentinel领导者,将重新开始下一次选举。...选择新主节点 剩下redis从节点中,按照以下顺序来选择新主节点: 过滤掉“不健康”数据节点:比如主观下线、断线从节点、五秒内没有回复过哨兵节点ping命令节点、与主节点失联从节点。

    1.2K20

    redis实例cpu占用率过高问题优化(番外)

    最后,还有几个待解决问题记录下: 1、主库used_memory_peak_human达到60.97G,实际主库maxmemory只配置了32G 127.0.0.1:6379> info memory...# Memory used_memory:3531621728 used_memory_human:3.29G used_memory_rss:70885924864 used_memory_peak...,只能通过重启进程释放 2、redis过期key会不会自动删除?...:从数据集(server.db[i].dict)中任意选择数据淘汰 noeviction : 禁止驱逐数据,永不过期,返回错误 3、redis主从同步原理(全量/增量) 一张图一目了然: 复制积压缓冲区...=repl-backlog image.png redis2.8之前不支持增量备份 增量备份两个条件 slave带来runid是否当前masterrunid slave带来复制offsetmaster

    1.2K30

    redis学习(十九)

    # quorum 配置多少个sentinel哨兵统一认为master主节点失联 那么这时客观认为主节点失联了 # sentinel monitor sentinel auth-pass mymaster MySUPER--secret-0123passw0rd # 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观认为主节点下线...mymaster 30000 # 这个配置项指定了发生failover主备切换时最多可以有多少个slave同时对新master进行 同步, 这个数字越小,完成failover所需时间就越长, 但是如果这个数字越大...同一个sentinel对同一个master两次failover之间间隔时间。 #2. 当一个slave从一个错误master那里同步数据开始计算时间。...#如果脚本执行过程中由于收到系统中断信号被终止了,则同返回值为1时行为相同。 #一个脚本最大执行时间为60s,如果超过这个时间,脚本将会被一个SIGKILL信号终止,之后重新执行。

    34030

    Redis学习三:Redis高可用之哨兵模式

    Redis Sentinel 是一个分布式系统, 你可以一个架构中运行多个 Sentinel 进程(progress), 这些进程使用流言协议(gossip protocols)来接收关于主服务器是否下线信息...新数据,也就避免了数据丢失 上面的配置就确保了,如果跟任何一个slave丢了连接,10秒后发现没有slave给自己ack,那么就拒绝新写请求 因此脑裂场景下,最多就丢失10秒数据。...如果一个 Sentinel 包含主服务器配置比另一个 Sentinel 发送配置要旧, 那么这个 Sentinel 会立即升级到新配置。...slave配置自动纠正 哨兵会负责自动纠正slave一些配置,比如slave如果要成为潜在master候选人,哨兵会确保slave复制现有master数据; 如果slave连接到了一个错误master...,比如故障转移之后,那么哨兵会确保它们连接到正确master slave->master选举算法 如果一个master被认为odown了,而且majority哨兵都允许了主备切换,那么某个哨兵就会执行主备切换操作

    61440

    Redis高可用搭建

    redis、mysql、http、shiro、threadlocal) Redis最好部署独立系统,避免其他系统干扰和增加排错成本。...26380 sentinel02:111.230.11.184 26381 Redis主从搭建 slave01和slave02上进行配置,指定master地址。...如果复制中断后再进行复制,slave可以通过runid找到当时复制master,再根据一次复制偏移量找到中断过程中未执行到命令,再进行复制操作。...当实例超过该时间没有返回ping,或者直接返回错误,那么sentinel将这个实例标记为主观下线。...sentinel parallel-syncs mymaster 1:指定了执行故障转移时,最多可以有多少个从Redis实例同步新主实例,在从Redis实例较多情况下这个数字越小,同步时间越长

    61720
    领券