检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Redis -Version 2.2.79。(版本号可以不指定) 图1 进入程序包管理器控制台 编写如下代码,并使用String的set和get测试连接。 using System; using StackExchange.Redis; namespace redisdemo {
0/6.0公网访问并获取公网访问地址。 公网访问使用Stunnel工具对通信内容加密,网络延时比VPC内通信略高,适用于开发阶段联调本地环境测试。 具体使用请参考:公网连接Redis3.0实例以及Stunnel工具的使用 免密访问 缓存实例支持不设置密码,在VPC内直接连接实例进行
dis实例密码”和“目标Redis实例密码”处输入实例密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果源Redis和目标Redis为免密访问模式,无需输入密码,直接单击“测试连接”。 在“源DB”和“目标DB”中,可以选择是否需要指定具体迁移的DB。例
dis实例密码”和“目标Redis实例密码”处输入实例密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果源Redis和目标Redis为免密访问模式,无需输入密码,直接单击“测试连接”。 在“源DB”和“目标DB”中,可以选择是否需要指定具体迁移的DB。例
建后支持在控制台“实例详情>参数配置”中修改。 QPS:即Query Per Second,表示数据库每秒执行的命令数。QPS的测试方法,可参考性能测试方法。 带宽:即实例的内网带宽,您可以查看监控指标“流控次数”,确认带宽是否超过限额。其中,带宽还涉及监控指标“带宽使用率”,该
0”。 实例类型 Redis实例类型,本次操作请选择“单机”类型。Redis单机实例为单节点架构,不支持数据持久化,成本相对较低,适用于开发测试环境搭建。 可用区 每个区域包含多个可用区(AZ),本次操作保持默认的可用区即可。 实例规格 本次操作请选择内存为“1 GB”的实例规格。
分别配置“源Redis实例密码”和“目标Redis实例密码”:如果是密码访问模式实例,在输入连接实例的密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果是免密访问的实例,请直接单击“测试连接”。 此处暂不支持使用Redis实例账号管理功能中创建的ACL账号及密码。 在“源DB”或“目
查找并禁用高消耗命令 使用了keys等消耗资源的命令,高消耗资源的命令即时间复杂度为O(N)或更高的命令,通常情况下,命令时间复杂度越高,在执行时消耗的资源越高,这会导致CPU使用率超高,容易触发主备倒换。关于各命令对应的时间复杂度信息请参见Redis官网。例如,使用了keys等消耗资源的命令,
查找并禁用高消耗命令 使用了keys等消耗资源的命令,高消耗资源的命令即时间复杂度为O(N)或更高的命令,通常情况下,命令时间复杂度越高,在执行时消耗的资源越高,这会导致CPU使用率超高,容易触发主备倒换。关于各命令对应的时间复杂度信息请参见Redis官网。例如,使用了keys等消耗资源的命令,
验证启动是否成功。 netstat -an|grep 6666 端口在监听状态,Nginx启动成功。 图5 验证结果 在华为云ECS执行以下命令测试6666端口的网络连接。 redis-cli -h {target_ecs_address} -p 6666 -a {password}
{redis_address} -p {port} [-a password] --scan --pattern '*a*' 遍历所有Key 由于keys命令复杂度高,容易导致Redis无响应,所以禁止使用keys命令遍历实例所有的Key。如果需要在Redis实例中遍历所有的Key,可以使用Redis-
修改DCS缓存实例密码时,如果重复5次输入错误的旧密码,该实例账户将被锁定5分钟,锁定期间不允许修改密码。 DCS账号密码必须满足以下复杂度要求: 密码不能为空。 新密码与旧密码不能相同。 密码长度在8到64位之间。 至少必须包含如下四种字符中的三种: 小写字母 大写字母 数字 特殊字符包括(`~
类型 必选 说明 old_password String 是 旧密码。 new_password String 是 新密码。 实例密码复杂度要求: 密码不能为空。 密码不能和账号及账号的倒序相同。 密码长度在8到32位之间。 至少必须包含如下四种字符中的三种: 小写字母 大写字母
表1 Stream与Redis现有数据结构比较 比较项 Stream List、Pub/Sub、Zset 复杂度 获取元素高效,复杂度为O(logN) List获取元素的复杂度为O(N) offset 支持offset,每个消息元素有唯一id。不会因为新元素加入或者其他元素淘汰而改变id。
Redis到DCS。 迁移原理 Rump使用SCAN来获取keys,用DUMP/RESTORE来get/set值。 SCAN是一个时间复杂度O(1) 的命令,可以快速获得所有的key。DUMP/RESTORE使读/写值独立于关键工作。 以下是Rump的主要特性: 通过SCAN非阻
变更规格过程中可能会出现秒级的实例连接中断和分钟级的只读。 更多变更规格可能产生的影响,请参考变更规格。 慢查询引起了请求堵塞 执行时间复杂度为O(N)的操作,引发慢查询和请求的堵塞,此时,客户端发起的其他请求可能出现暂时性失败。 复杂的网络环境 由于客户端与Redis服务器之间复
修改增大源端output buffer的大小,通过修改output-buffer-limit参数,建议采用这种方式。 增大shake全量同步的并发度,调高parallel。 在业务低峰期再进行同步。 从断点恢复失败 从断点恢复失败,建议从以下几个方面做排查 : Redis和ECS之间的连接问题
400 111400019 The password does not meet complexity requirements. 密码复杂度不符合要求。 请检查请求参数是否合法。 400 111400020 DHCP must be enabled for this subnet
当“no_password_access”配置为“false”或未配置时,请求消息中须包含password参数。 Redis类型的缓存实例密码复杂度要求: 输入长度为8到32位的字符串。 新密码不能与旧密码相同。 必须包含如下四种字符中的三种组合: 小写字母 大写字母 数字 特殊字符包括(`~
当“no_password_access”配置为“false”或未配置时,请求消息中须包含password参数。 Redis类型的缓存实例密码复杂度要求: 输入长度为8到64位的字符串。 不能使用正序或逆序用户名作为密码。 必须包含如下四种字符中的三种组合: 小写字母 大写字母 数字 特殊字符包括(`~