检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
requested address。 问题分析 出现这种错误的应用程序使用的架构基本都是php-fpm加上phpredis,这种架构在并发量较大的情况下,处于TIME-WAIT状态下的TCP连接数较多,客户端无法分配出新的端口,则会出现“Cannot assign requested
100% 处理的命令数 该指标统计的是周期内处理的命令数,周期默认为1分钟。 和每秒并发操作数主要区别在于监控周期。每秒并发操作数,统计的是周期内的一个瞬时的处理命令数;处理的命令数,统计的是周期内处理的命令数总和。 流控次数 该指标用于统计周期内流量超过该实例规格对应的最大带宽的次数。
客户端根据RESP2协议的内容,启动后从Cluster集群获取节点拓扑信息(Cluster Nodes),并将其拓扑关系维护在客户端的内存数据结构中。 对于数据访问,客户端会根据Key值按照CRC16算法进行Hash计算Slot信息,根据内存中保存的节点拓扑关系和Slot的对应信息进行请求自动路由。
发送完毕后,客户端关闭请求,开始接收响应,把收到的执行结果与之前发送的命令按顺序进行匹配。 图1 非Pipeline模式与Pipeline模式的网络通信示意图 在Pipeline模式的具体实现中,大部分Redis客户端采用批量处理的方式,即一次发送多个命令,在接收完所有命令执行结
进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:允许或拒绝某项操作。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 依赖的授权项:部
在“源DB”和“目标DB”中,可以选择是否需要指定具体迁移的DB。例如源端输入5,目标端输入6时,表示迁移源Redis DB5中的数据到目标Redis的DB6。当源端不指定DB,目标端指定DB时,表示默认迁移源端的全部数据到目标端指定的DB;当目标端不指定DB时,表示默认迁移到与源端对应的DB。本次操作“源DB”和“目标DB”置空即可。
在“源DB”和“目标DB”中,可以选择是否需要指定具体迁移的DB。例如源端输入5,目标端输入6时,表示迁移源Redis DB5中的数据到目标Redis的DB6。当源端不指定DB,目标端指定DB时,表示默认迁移源端的全部数据到目标端指定的DB;当目标端不指定DB时,表示默认迁移到与源端对应的DB。本次操作“源DB”和“目标DB”置空即可。
与在线迁移相比,离线迁移适用于源实例与目标实例的网络无法连通,或者源端实例部署在其他云厂商Redis服务中,无法实现在线迁移的场景。 前提条件 已创建DCS Cluster集群Redis,创建Redis的方法,请参见购买Redis实例。 创建的目标Redis内存规格不能小于源Redis。
约成本的机会。也可以根据成本分析阶段的分析结果识别成本偏高的资源,然后采取针对性的优化措施。 计费模式优化 不同类型的业务对资源使用周期有不同的要求,为每一类业务确定合适的计费模式,灵活组合以达到最优效果。 针对长期稳定的成熟业务,使用包年/包月计费模式。 针对不能中断的短期、突增或不可预测的业务,使用按需计费模式。
本章节介绍使用Lettuce客户端连接Redis实例的方法。更多的客户端的使用方法请参考Redis客户端。 在springboot类型的项目中,spring-data-redis中已提供了对jedis、lettuce的集成适配。另外,在springboot1.x中默认集成的是jedis,springboot2
AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用Token认证。 AK/SK既可以使用永久访问密钥中的AK/SK,也可以使用临时访问密钥中的AK/SK,但使用临时访问密钥的AK/SK时需要额外携带“X-Security-Token”字段,字段值为临时访问密钥的security_token。
Cluster集群实例支持多个Key,但不支持跨slot访问的Redis命令。受限使用的命令如表1。 Proxy集群实例支持多Key的命令中,部分命令不支持跨slot访问,请参考表3。受限使用的命令如表2。 读写分离实例受限使用的命令,如表4。 当用户执行比较耗时的命令(如flushall)时,可能会导
不同实例规格支持的QPS请参考实例规格。 查找并禁用高消耗命令 使用了keys等消耗资源的命令,高消耗资源的命令即时间复杂度为O(N)或更高的命令,通常情况下,命令时间复杂度越高,在执行时消耗的资源越高,这会导致CPU使用率超高,容易触发主备倒换。关于各命令对应的时间复杂度信息请
通过性能监控功能,确认CPU使用率高的具体时间段。 通过下述方法,找出高消耗的命令。 慢查询功能会记录执行超过指定时间阈值的命令,通过分析慢查询的语句和执行时长可帮助您找出高消耗命令,具体操参见慢查询。 通过实例诊断功能,选择CPU冲高的时间点进行诊断后,可以看到报告中的对应时间段命令的执行情况以及CPU耗时百分比,具体操作参见实例诊断。
Key过大的时候会触发Redis内核对于单Key的迁移限制,造成数据迁移超时失败,Key越大失败的概率越高,大于512MB的Key可能会触发该问题。 造成数据迁移失败。 数据迁移过程中,如果一个大Key的元素过多,则会阻塞后续Key的迁移,后续Key的数据会放到迁移机的内存Buf
本章节介绍使用Redisson客户端连接Redis实例的方法。更多的客户端的使用方法请参考Redis客户端。 在springboot类型的项目中,spring-data-redis中提供了对jedis、lettuce的适配,但没有提供对redisson组件的适配。为了能够在springboot中
出aof和rdb格式的备份文件。 对于多分片的集群实例,下载的备份文件为多个,每个分片对应一个备份文件。 前提条件 实例已做备份且没有过期。 下载DCS实例备份文件 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择实例所在的区域。 单击左侧菜单栏的“缓存管理”,进入DCS缓存实例信息页面。
和创建连接造成不必要的开销。 假设一次命令时间,即borrow|return resource加上Jedis执行命令(含网络耗时)的平均耗时约为1ms,一个连接的QPS大约是1s/1ms = 1000,而业务期望的单个Redis的QPS是50000(业务总的QPS/Redis分片
方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询VPC列表。 subnet_id 是 String 子网的网络ID。 获取方法如下: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。
准备实例依赖资源 DCS的Redis实例部署于虚拟私有云(VPC)中,且需要绑定具体的子网,通过这样的方式为Redis提供隔离的、用户可自主配置管理的虚拟网络环境。如果是企业版Redis,还需要配置安全组,以提升实例的安全性。 因此,在创建Redis实例前您需要提前准备Redis实例的相关依赖资