检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
flushdb命令采用逐个key删除的方式执行,耗时久,慢于开源原生实现,速度与SCAN命令相同(需要客户实际测试)。 dbsize命令耗时长,禁止在代码中使用。 多DB场景下keys命令和scan命令性能会有损失(最多50%)。 其他约束: 后端存储会按照一定规则对key进行改写,导出RD
可以配置maxAttempts参数来定义失败时的重试次数(默认值为5)。JedisCluster的所有操作都默认调用了重试的方法。 示例代码: @Bean JedisCluster jedisCluster() { Set<HostAndPort> hostAndPortsSet
建议客户登录控制台,参考缓存分析和慢查询,执行大Key扫描和慢查询。如果实例没有设置过期时间,会导致存储数据太多,内存被占满。 Redis实例如果内存满了但是key不多,可能原因是客户端缓冲区(output buffer)占用过多的内存空间。 可以在Redis-cli客户端连接实例后,执行大key扫描命令:redis-cli
在线迁移需要注意哪些? 网络 在线迁移首先需要打通网络,迁移任务必须和源Redis、DCS缓存实例二者网络互通。 工具 在线迁移工具,推荐使用DCS控制台的在线迁移功能。 数据完整性 如果选择中断业务,则迁移完成后检查数据量和关键key。 如果选择不中断业务,则用户需要考虑增量数据的迁移。
集群架构中使用Pipeline时,确保Pipeline内部的命令符合集群架构的可执行条件,具体限制请参见实例受限使用命令。 性能对比 如下代码将演示使用Pipeline与不使用Pipeline的性能对比。 public static void main(String[] args)
下面两种情况均属于无法从资源池获取到资源。此类异常的原因不一定是资源池不够大,请参见关键参数设置建议中的分析。建议从网络、资源池参数设置、资源池监控(如果对JMX监控)、代码(例如没执行jedis.close())、慢查询、DNS等方面进行排查。 超时: redis.clients.jedis.exceptions
else { fmt.Println(err) } } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 提交开启实例公网访问任务成功。 204 开启/修改 Redis
”。 导入go-redis的依赖包,在终端输入go get github.com/go-redis/redis。 图1 终端输入 编写如下代码: package main import ( "fmt" "github.com/go-redis/redis" ) func main()
Redis 4.0/5.0 Cluster集群实例测试数据 测试环境说明 测试实例规格 Redis 4.0/5.0 32G Cluster集群 测试执行机规格 通用计算增强型 | c6.xlarge.2 | 4vCPUs | 8GB 测试工具 使用三台ECS并发测试,测试工具为memtier_benchmark
主备倒换的业务影响 DCS主备、读写分离、或者集群实例发生异常时,会触发内部主备倒换,并自动恢复,在异常检测和恢复期间,可能会影响业务,时间在半分钟内。 父主题: 主备倒换
使用memtier_benchmark测试Redis性能 Memtier_benchmark是Redis Labs推出的一款命令行工具,它能够产生多种流量模式,对Redis实例进行基准测试。该工具提供了丰富的自定义选项和报表功能,通过命令行界面就能够轻松地使用。了解memtier
本文档下载的开发工具和客户端仅为示例,您可以选择其它类型的工具和客户端。 实施步骤 在服务器上运行Intellij IDEA,创建一个MAVEN工程,为示例代码创建一个SecondsKill.java文件,pom.xml文件中引用Jedis: <dependency> <groupId>redis
else { fmt.Println(err) } } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 204 缓存实例规格变更成功。 错误码 请参见错误码。 父主题: 生命周期管理
Redis 4.0/5.0 Proxy实例测试数据 测试环境说明 测试实例规格 Redis 4.0/5.0 64G(8分片) Proxy集群 测试执行机规格 通用计算增强型 | c6.xlarge.2 | 4vCPUs | 8GB 测试工具 使用三台ECS并发测试,测试工具为memtier_benchmark
使用Redis-cli离线迁移自建Redis(AOF文件) Redis-cli是Redis自带的一个命令行工具,安装Redis后即可直接使用Redis-cli工具。本文档主要介绍如何使用Redis-cli将自建Redis迁移到DCS缓存实例。 AOF文件的生成较快,适用于可以进入
使用Rump在线迁移其他云厂商Redis 部分云厂商的Redis实例禁止客户端发起SLAVEOF、BGSAVE、PSYNC等命令,无法使用Redis-cli、或RedisShake等工具快速导出数据。使用KEYS命令容易造成服务端阻塞。云厂商一般只提供备份文件下载,这种方式仅适宜
会话地址。如果Redis开启了IP透传,该地址为客户端IP地址;如果Redis未开启IP透传,该地址为内部私网占用IP。 name 客户端名称,可通过代码中的 setClientName(...) 配置,如果未配置则该字段为空。 cmd 最近一次执行的命令。 age 连接的时长,单位:秒。 idle
和远端Redis的两级缓存架构,热点数据优先从本地缓存获取,写入时同时更新,这样能够分担热点数据的大部分读压力。缺点是需要修改客户端架构和代码,改造成本较高。 设计熔断/降级机制。 热Key极易造成缓存击穿,高峰期请求都直接透传到后端数据库上,从而导致业务雪崩。因此热Key的优化
和远端Redis的两级缓存架构,热点数据优先从本地缓存获取,写入时同时更新,这样能够分担热点数据的大部分读压力。缺点是需要修改客户端架构和代码,改造成本较高。 设计熔断/降级机制。 热Key极易造成缓存击穿,高峰期请求都直接透传到后端数据库上,从而导致业务雪崩。因此热Key的优化
连接池选择及Jedis连接池参数配置建议 Jedis连接池优势 Lettuce客户端及Jedis客户端比较如下: Lettuce: Lettuce客户端没有连接保活探测,错误连接存在连接池中会造成请求超时报错。 Lettuce客户端未实现testOnBorrow等连接池检测方法,无法在使用连接之前进行连接校验。