云服务器内容精选
-
测试结果 以下测试结果仅供参考,不同局点环境和网络波动等客观条件可能产生性能差异。 QPS:即Query Per Second,表示每秒处理的读写操作数,单位是次/秒。 平均/最大时延:操作的平均/最大延迟时间,单位为毫秒(ms)。 x%延迟:指x%操作的延迟时间,单位为毫秒(ms)。例如该指标的值为10ms,99.99%延迟表示99.99%的请求可以在10ms内被处理。 表1 SET操作命令测试结果 实例规格 实例CPU类型 并发连接数(个) QPS 99.99%延迟(ms) 第一个100%延迟(ms) 最后一个100%延迟(ms) 32G X86 1000 371780.2 5.6 6.3 44 10000 256073.11 90 220 460 32G ARM 1000 317053.78 17 34 230 10000 248832.33 410 490 750 表2 GET操作命令测试结果 实例规格 实例CPU类型 并发连接数(个) QPS 99.99%延迟(ms) 第一个100%延迟(ms) 最后一个100%延迟(ms) 32G X86 1000 427000.04 5.0 5.3 78 10000 302159.03 63 220 460 32G ARM 1000 421402.06 13 14 65 10000 309359.18 180 260 500
-
实现流程 表1 使用FunctionGraph函数访问Redis数据实现流程 序号 步骤 说明 1 准备工作 使用FunctionGraph配置函数访问Redis数据前需进行的前期准备。 2 创建依赖包 创建一个redis-py的依赖包。 3 创建函数 创建实现Redis数据访问的函数并进行配置。请参考示例代码连接实例。 4 FunctionGraph监控告警 创建FunctionGraph监控告警完成对函数运行的实时监控。 5 日志告警(可选) 配置函数代码执行日志告警结果返回。 6 调试函数 配置测试事件进行函数调试。
-
前提条件 在迁移之前,请先阅读迁移方案概览,选择正确的迁移方案,了解当前D CS 支持的在线迁移能力,选择适当的目标实例。 如果是单机/主备等多DB的源端实例迁移到Proxy集群实例,Proxy集群默认不开启多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请先参考开启多DB操作开启Proxy集群多DB设置。 如果是单机/主备等多DB的源端实例迁移到Cluster集群实例,Cluster集群不支持多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请将数据转存到DB0,否则会出现迁移失败,将数据转存到DB0的操作请参考使用Rump在线迁移。 已获取准备迁移的源Redis实例的IP地址和端口。 如果您还没有目标Redis,请先创建目标Redis,具体操作请参考购买Redis实例。 如果您已有目标Redis,则不需要重复创建,为了对比迁移前后数据及预留足够的内存空间,建议在数据迁移之前清空目标实例数据,清空操作请参考清空Redis实例数据。如果没有清空实例数据,数据迁移后,目标Redis与源Redis实例重复的数据迁移后会被覆盖,源Redis没有、目标Redis有的数据会保留。
-
创建在线迁移任务 请使用DCS目标Redis所在的账号登录分布式缓存服务控制台。 在管理控制台左上角单击,选择DCS目标Redis所在的区域。 单击左侧菜单栏的“数据迁移”。页面显示迁移任务列表页面。 单击右上角的“创建在线迁移任务”。 设置迁移任务名称和描述。 任务名称请以字母开头,长度不小于4位且不超过64位。任务名称只能包含字母、数字、中划线、下划线。 配置在线迁移任务虚拟机资源的VPC、子网和安全组。 请选择与目标Redis相同的VPC,确保迁移资源能访问目标Redis实例。 创建的在线迁移任务会占用一个租户侧IP,即控制台上迁移任务对应的“迁移IP”。如果源端Redis或目标端Redis配置了白名单,需确保配置了迁移IP或关闭白名单限制。 迁移任务所选安全组的“出方向规则”需放通源端Redis和目标端Redis的IP和端口(安全组默认情况下为全部放通,则无需单独放通),以便迁移任务的虚拟机资源能访问源Redis和目标Redis。
-
约束与限制 如果源Redis禁用了SYNC和PSYNC命令,请务必放通后再执行在线迁移,否则会导致在线迁移失败。 在线迁移不支持公网方式直接迁移。 进行在线迁移时,建议将源端实例的参数repl-timeout配置为300秒,client-output-buffer-limit配置为源端实例最大内存的20%。 源端仅支持Redis 3.0及3.0以上的Redis版本。 较早建立的实例如果密码中包含单引号('),则该实例不支持进行在线迁移,建议修改实例密码或使用其他迁移方式。 开启了SSL的目标实例不支持数据迁移,需要关闭目标实例SSL后再进行迁移,开启或关闭SSL的操作请参考配置Redis SSL 数据加密 传输。
-
配置在线迁移任务 创建完在线迁移任务之后,单击该迁移任务右侧的“配置”,配置在线迁移的源Redis、目标Redis等信息。 选择迁移方法。 支持“全量迁移”和“全量迁移+增量迁移”两种,“全量迁移”和“全量迁移+增量迁移”的功能及限制如表1所示。 表1 在线迁移方法说明 迁移类型 描述 全量迁移 该模式为Redis的一次性迁移,适用于可中断业务的迁移场景。全量迁移过程中,如果源Redis有数据更新,这部分更新数据不会被迁移到目标Redis。 全量迁移+增量迁移 该模式为Redis的持续性迁移,适用于对业务中断敏感的迁移场景。增量迁移阶段通过解析日志等技术, 持续保持源Redis和目标端Redis的数据一致。 增量迁移,迁移任务会在迁移开始后,一直保持迁移中状态,不会自动停止。需要您在合适时间,在“操作”列单击“停止”,手动停止迁移。停止后,源端数据不会造成丢失,只是目标端不再写入数据。增量迁移在传输链路网络稳定情况下是秒级时延,具体的时延情况依赖于网络链路的传输质量。 图1 选择迁移方法 仅当迁移方法选择“全量迁移+增量迁移”时,支持选择是否启用“带宽限制”。 如果启用带宽限制功能,当数据同步速度达到带宽限制时,将限制同步速度的继续增长。 选择是否“自动重连”。如开启自动重连模式,迁移过程中在遇到网络等异常情况时,会无限自动重连。 自动重连模式在无法进行增量同步时,会触发全量同步,增加带宽占用,请谨慎选择。 分别配置“源Redis”和“目标Redis”。 配置“源Redis类型”和“源Redis实例”: “源Redis类型”请选择“自建Redis”,并在“源Redis实例”处输入源Redis的IP地址和端口。 如果源Redis为Cluster集群,需要输入集群所有主节点的IP端口,用英文逗号隔开。例如:192.168.1.1:6379,192.168.0.0:6379 配置“目标Redis类型”和“目标Redis实例”: “目标Redis类型”请选择“云服务Redis”,并在“目标Redis实例”处选择需要迁移的目标Redis。 分别配置“源Redis实例密码”和“目标Redis实例密码”:如果是密码访问模式实例,在输入连接实例密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果是免密访问的实例,请直接单击“测试连接”。如果测试连接失败,请检查输入的实例密码是否正确、Redis实例与迁移任务网络是否打通。 如果是DCS服务的Redis实例,此处暂不支持使用账号管理功能中创建的ACL账号及密码。 在“源DB”或“目标DB”中,您可以选择是否需要指定具体迁移的DB。例如源端输入5,目标端输入6时,表示迁移源Redis DB5中的数据到目标Redis的DB6;当源端不指定DB,目标端指定DB时,表示默认迁移源端的全部数据,到目标端指定的DB,当目标端不指定DB时,表示默认迁移到与源端对应的DB。 当源端为多DB,目标端为单DB的DCS实例时(单DB的实例只有DB0),需要源端的所有数据都在DB0,或者指定仅迁移源端某一DB中的数据并将目标端DB指定为0,否则会迁移失败。 DCS Redis的DB数请参见Redis实例是否支持多DB方式?。 单击“下一步”。 确认迁移信息,然后单击“提交”,开始创建迁移任务。 可返回迁移任务列表中,观察对应的迁移任务的状态,迁移成功后,任务状态显示“成功”。 如果出现迁移失败,建议单击迁移任务名称,进入迁移任务详情页面,通过“迁移日志”排查迁移失败的原因。 如果是增量迁移,全量迁移后会一直处于增量迁移中的状态。 如需手动停止迁移中的任务,勾选迁移任务左侧的方框,单击迁移任务上方的“停止”,即可停止迁移。 勾选停止迁移或迁移失败的迁移任务,单击迁移任务上方的“重启”,可重新进行迁移。如果重启迁移任务后迁移失败,建议单击“配置”,重新配置在线迁移任务后重试。 单次最多支持勾选50个在线迁移任务,批量停止、删除、或重启迁移任务。
-
迁移后验证 数据迁移前如果目标Redis中数据为空,迁移完成后,可以通过以下方式确认数据的完整性: 连接源Redis和目标Redis。连接Redis的方法请参考Redis-cli客户端连接Redis。 输入info keyspace,查看keys参数和expires参数的值。 对比源Redis和目标Redis的keys参数分别减去expires参数的差值。如果差值一致,则表示数据完整,迁移正常。 注意:如果是全量迁移,迁移过程中源Redis更新的数据不会迁移到目标实例。
-
检查网络 检查源Redis、目标Redis、迁移任务资源所在VPC是否为同一个VPC。 如果是,请执行配置在线迁移任务;如果不是,请执行2。 检查源Redis的VPC、目标Redis的VPC、迁移任务资源所在VPC的网络是否打通,确保迁移任务的虚拟机资源能访问源Redis和目标Redis。 如果已打通,则执行配置在线迁移任务;如果没打通,则执行3。 执行相应操作,打通网络。 当源Redis和目标Redis所在的VPC属于同一云厂商的同一Region,请参考VPC对等连接说明,查看和创建对等连接,打通网络。 当源Redis和目标Redis所在的VPC属于同一云厂商的不同Region,请参考云连接,查看和创建云连接,打通网络。 当源Redis和目标Redis属于不同的云厂商,仅支持云专线打通网络,请参考云专线。
-
开启或关闭SSL 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择实例所在的区域。 单击左侧菜单栏的“缓存管理”。 在“缓存管理”页面,单击需要执行操作的缓存实例名称。 单击左侧菜单栏的“SSL设置”,进入SSL设置页面。 单击“SSL证书”后的,可以开启或关闭SSL。 开通或关闭SSL将会重启您的实例。实例会出现秒级的连接闪断,请在业务低峰期执行该操作并确保应用具备重连机制。 重启操作无法撤销,单机实例及其他关闭了AOF持久化(参数配置appendonly为no)的实例,数据将清空,实例正在执行的备份任务会被停止,请谨慎操作。 开启SSL后,实例的读写性能会有所下降。 开启SSL功能后,单击“下载证书”,下载SSL证书。 解压SSL证书,将解压后的“ca.crt”文件上传到Redis客户端所在的服务器上。 在连接实例的命令中配置“ca.crt”文件所在的路径。例如,使用redis-cli连接实例时,请参考使用redis-cli连接Redis实例。
-
StackExchange.Redis客户端连接Redis 查看并获取待连接Redis实例的IP地址/ 域名 和端口。 具体步骤请参见查看和修改DCS实例基本信息。 登录弹性云服务器。 弹性云服务器操作系统,这里以Window为例。 在弹性云服务器安装VS 2017社区版。 启动VS 2017,新建一个工程。 工程名自定义,这里设置为“redisdemo”。 使用VS的nuget管理工具安装C# Redis客户端StackExchange.Redis。 按照如图1操作,进入程序包管理器控制台,在nuget控制台输入:Install-Package StackExchange.Redis -Version 2.2.79。(版本号可以不指定) 图1 进入程序包管理器控制台 编写如下代码,并使用String的set和get测试连接。 using System; using StackExchange.Redis; namespace redisdemo { class Program { // redis config private static ConfigurationOptions connDCS = ConfigurationOptions.Parse("{instance_ip_address}:{port},password=********,connectTimeout=2000"); //the lock for singleton private static readonly object Locker = new object(); //singleton private static ConnectionMultiplexer redisConn; //singleton public static ConnectionMultiplexer getRedisConn() { if (redisConn == null) { lock (Locker) { if (redisConn == null || !redisConn.IsConnected) { redisConn = ConnectionMultiplexer.Connect(connDCS); } } } return redisConn; } static void Main(string[] args) { redisConn = getRedisConn(); var db = redisConn.GetDatabase(); //set get string strKey = "Hello"; string strValue = "DCS for Redis!"; Console.WriteLine( strKey + ", " + db.StringGet(strKey)); Console.ReadLine(); } } } 其中,{instance_ip_address}和{port}分别为Redis实例的IP地址/域名以及端口。IP地址/域名和端口获取见1,请按实际情况修改后执行。********为创建Redis实例时自定义的密码,请按实际情况修改后执行。 运行代码,控制台界面输出如下,表示连接成功。 Hello, DCS for Redis! 关于客户端的其他命令,可以参考StackExchange.Redis。
-
约束与限制 如果源Redis禁用了SYNC和PSYNC命令,请务必联系源端云厂商放通SYNC和PSYNC命令,否则会导致在线迁移失败。 在线迁移不支持公网方式直接迁移。 进行在线迁移时,建议将源端实例的参数repl-timeout配置为300秒,client-output-buffer-limit配置为源端实例最大内存的20%。 源端仅支持Redis 3.0及3.0以上的Redis版本。 较早建立的实例如果密码中包含单引号('),则该实例不支持进行在线迁移,建议修改实例密码或使用其他迁移方式。 开启了SSL的目标实例不支持数据迁移,需要关闭目标实例SSL后再进行迁移,开启或关闭SSL的操作请参考配置Redis SSL数据加密传输。
-
迁移后验证 数据迁移前如果目标Redis中数据为空,迁移完成后,可以通过以下方式确认数据的完整性: 连接源Redis和目标Redis。连接Redis的方法请参考Redis-cli客户端连接Redis。 输入info keyspace,查看keys参数和expires参数的值。 对比源Redis和目标Redis的keys参数分别减去expires参数的差值。如果差值一致,则表示数据完整,迁移正常。 注意:如果是全量迁移,迁移过程中源Redis更新的数据不会迁移到目标实例。
-
检查网络 检查源Redis、目标Redis、迁移任务资源所在VPC是否为同一个VPC。 如果是,请执行配置在线迁移任务;如果不是,请执行2。 检查源Redis的VPC、目标Redis的VPC、迁移任务资源所在VPC的网络是否打通,确保迁移任务的虚拟机资源能访问源Redis和目标Redis。 如果已打通,则执行配置在线迁移任务;如果没打通,则执行3。 源Redis和目标Redis属于不同的云厂商,仅支持云专线打通网络,请参考云专线。
-
配置在线迁移任务 创建完在线迁移任务之后,单击该迁移任务右侧的“配置”,配置在线迁移的源Redis、目标Redis等信息。 选择迁移方法。 支持“全量迁移”和“全量迁移+增量迁移”两种,“全量迁移”和“全量迁移+增量迁移”的功能及限制如表1所示。 表1 在线迁移方法说明 迁移类型 描述 全量迁移 该模式为Redis的一次性迁移,适用于可中断业务的迁移场景。全量迁移过程中,如果源Redis有数据更新,这部分更新数据不会被迁移到目标Redis。 全量迁移+增量迁移 该模式为Redis的持续性迁移,适用于对业务中断敏感的迁移场景。增量迁移阶段通过解析日志等技术, 持续保持源Redis和目标端Redis的数据一致。 增量迁移,迁移任务会在迁移开始后,一直保持迁移中状态,不会自动停止。需要您在合适时间,在“操作”列单击“停止”,手动停止迁移。停止后,源端数据不会造成丢失,只是目标端不再写入数据。增量迁移在传输链路网络稳定情况下是秒级时延,具体的时延情况依赖于网络链路的传输质量。 图1 选择迁移方法 仅当迁移方法选择“全量迁移+增量迁移”时,支持选择是否启用“带宽限制”。 如果启用带宽限制功能,当数据同步速度达到带宽限制时,将限制同步速度的继续增长。 选择是否“自动重连”。如开启自动重连模式,迁移过程中在遇到网络等异常情况时,会无限自动重连。 自动重连模式在无法进行增量同步时,会触发全量同步,增加带宽占用,请谨慎选择。 分别配置“源Redis”和“目标Redis”。 配置“源Redis类型”和“源Redis实例”: “源Redis类型”请选择“自建Redis”,并在“源Redis实例”处输入源Redis的IP地址和端口。 如果源Redis为Cluster集群,需要输入集群所有主节点的IP端口,用英文逗号隔开。例如:192.168.1.1:6379,192.168.0.0:6379 配置“目标Redis类型”和“目标Redis实例”: “目标Redis类型”请选择“云服务Redis”,并在“目标Redis实例”处选择需要迁移的目标Redis。 分别配置“源Redis实例密码”和“目标Redis实例密码”:如果是密码访问模式实例,在输入连接实例密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果是免密访问的实例,请直接单击“测试连接”。如果测试连接失败,请检查输入的实例密码是否正确、Redis实例与迁移任务网络是否打通。 如果是DCS服务的Redis实例,此处暂不支持使用账号管理功能中创建的ACL账号及密码。 在“源DB”或“目标DB”中,您可以选择是否需要指定具体迁移的DB。例如源端输入5,目标端输入6时,表示迁移源Redis DB5中的数据到目标Redis的DB6;当源端不指定DB,目标端指定DB时,表示默认迁移源端的全部数据,到目标端指定的DB,当目标端不指定DB时,表示默认迁移到与源端对应的DB。 当源端为多DB,目标端为单DB的DCS实例时(单DB的实例只有DB0),需要源端的所有数据都在DB0,或者指定仅迁移源端某一DB中的数据并将目标端DB指定为0,否则会迁移失败。 DCS Redis的DB数请参见Redis实例是否支持多DB方式?。 单击“下一步”。 确认迁移信息,然后单击“提交”,开始创建迁移任务。 可返回迁移任务列表中,观察对应的迁移任务的状态,迁移成功后,任务状态显示“成功”。 如果出现迁移失败,建议单击迁移任务名称,进入迁移任务详情页面,通过“迁移日志”排查迁移失败的原因。 如果是增量迁移,全量迁移后会一直处于增量迁移中的状态。 如需手动停止迁移中的任务,勾选迁移任务左侧的方框,单击迁移任务上方的“停止”,即可停止迁移。 勾选停止迁移或迁移失败的迁移任务,单击迁移任务上方的“重启”,可重新进行迁移。如果重启迁移任务后迁移失败,建议单击“配置”,重新配置在线迁移任务后重试。 单次最多支持勾选50个在线迁移任务,批量停止、删除、或重启迁移任务。
-
创建在线迁移任务 请使用DCS目标Redis所在的账号登录分布式缓存服务控制台。 在管理控制台左上角单击,选择DCS目标Redis所在的区域。 单击左侧菜单栏的“数据迁移”。页面显示迁移任务列表页面。 单击右上角的“创建在线迁移任务”。 设置迁移任务名称和描述。 任务名称请以字母开头,长度不小于4位且不超过64位。任务名称只能包含字母、数字、中划线、下划线。 配置在线迁移任务虚拟机资源的VPC、子网和安全组。 请选择与目标Redis相同的VPC,确保迁移资源能访问目标Redis实例。 创建的在线迁移任务会占用一个租户侧IP,即控制台上迁移任务对应的“迁移IP”。如果源端Redis或目标端Redis配置了白名单,需确保配置了迁移IP或关闭白名单限制。 迁移任务所选安全组的“出方向规则”需放通源端Redis和目标端Redis的IP和端口(安全组默认情况下为全部放通,则无需单独放通),以便迁移任务的虚拟机资源能访问源Redis和目标Redis。
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格