云服务器内容精选

  • 方案概述 应用场景 视频、直播弹幕展示和社交网站评论回复等场景,要求时效性高,互动性强,类似这样的业务对平台的系统时延有着非常高的要求。如果使用关系型数据库,会涉及到按评论时间逆排序,随着评论越来越多,排序效率越来越低,且并发频繁。 解决方案 使用分布式缓存服务(D CS )的Redis缓存,可以从不同的维度,对某个key-value的列表进行降序显示。例如,直播弹幕中的弹幕列表,可以采用zset有序集合结构,以时间戳为score权重参数进行排序,value可以直接存储弹幕内容。社交网站评论回复,同样也可以采用zset结构,但是由于社交网站评论和回复的内容很多,展示结构有一定的层级,同时需要持久化到本地,可以用value存储评论主键ID,评论内容存放到数据库,通过ID查询评论内容。
  • 前提条件 已创建DCS缓存实例,且状态为“运行中”。 客户端所在服务器与DCS缓存实例网络互通: 客户端与Redis实例所在VPC为同一VPC 同一VPC内网络默认互通。 客户端与Redis实例所在VPC为相同region下的不同VPC 如果客户端与Redis实例不在相同VPC中,可以通过建立VPC对等连接方式连通网络,具体请参考:缓存实例是否支持跨VPC访问?。 客户端与Redis实例所在VPC不在相同region 如果客户端服务器和Redis实例不在同一region,仅支持通过云专线打通网络,请参考云专线。 公网访问 客户端公网访问Redis 4.0/5.0/6.0实例时,需要开启实例公网访问开关,具体请参考开启Redis 4.0/5.0/6.0公网访问并获取公网访问地址。 客户端所在的服务器已安装JDK1.8以上版本和开发工具(本文档以安装Eclipse为例),下载jedis客户端(单击此处直接下载jar包)。 本文档下载的开发工具和客户端仅为示例,您可以选择其它类型的工具和客户端。
  • 运行结果 视频直播 弹幕代码示例运行结果如下: 直播弹幕列表 弹幕内容: message-07f1add5-2f85-4309-9f31-313c860b33dc, 发送时间: 1686902337377 弹幕内容: message-2062e817-3145-4d8b-af7f-46f334c8569c, 发送时间: 1686902337394 弹幕内容: message-ad36a0ca-e8bd-4883-a091-e12a25c00106, 发送时间: 1686902337396 弹幕内容: message-f02f9960-bb57-49ae-b7d8-6bd6d3ad3d14, 发送时间: 1686902337412 弹幕内容: message-5ca39948-866e-4e54-a469-f958cae843f6, 发送时间: 1686902337457 弹幕内容: message-5cc8b4ba-da61-4d01-9625-cf2e7337ef10, 发送时间: 1686902337489 弹幕内容: message-15378516-18ce-4da7-bd3c-35c57dd65602, 发送时间: 1686902337495 弹幕内容: message-1b280525-53e5-4fc6-a3e7-fb8e71eef85e, 发送时间: 1686902337540 弹幕内容: message-adf876d1-e747-414e-92a2-397fc329bd58, 发送时间: 1686902337541 弹幕内容: message-1d8d7901-164f-4dd4-abb4-6f2345164b0e, 发送时间: 1686902337582 弹幕内容: message-fb35b1b4-277a-48bf-b22b-80070aae8475, 发送时间: 1686902337667 弹幕内容: message-973b1b03-bf95-44d8-ab91-0c317b2d61b3, 发送时间: 1686902337755 弹幕内容: message-1481f883-757d-47f7-b8c0-df024d6e64a4, 发送时间: 1686902337770 弹幕内容: message-b79292ca-2409-43fb-aaf0-e33f3b9d9c8d, 发送时间: 1686902337820 弹幕内容: message-66b0e955-d509-4475-9ae5-12fb86cf9596, 发送时间: 1686902337844 弹幕内容: message-12b6d15a-037a-47ee-8294-8625d202c0a0, 发送时间: 1686902337907 弹幕内容: message-fbc06323-da2a-44b8-874b-d2cf1a737064, 发送时间: 1686902337927 弹幕内容: message-7a0f787c-aff1-422f-9e62-4beda0cd5914, 发送时间: 1686902337977 弹幕内容: message-8ba5e4e0-22af-4f80-90a6-35062967e0fd, 发送时间: 1686902337992 弹幕内容: message-fa9e1169-e918-4141-9805-87edcf84c379, 发送时间: 1686902338000 弹幕内容: message-5d17be15-ba2e-461f-aba5-65c20c21d313, 发送时间: 1686902338059 弹幕内容: message-dcedc840-1be7-496a-b781-5b79c2091fe5, 发送时间: 1686902338067 弹幕内容: message-9e39eb28-6629-4d4c-8970-2acdc0e81a5c, 发送时间: 1686902338102 弹幕内容: message-030b11fe-c258-4ca2-ac82-5e6ca1eb688f, 发送时间: 1686902338211 弹幕内容: message-93322018-a987-47ba-8093-3937dddda97d, 发送时间: 1686902338242 弹幕内容: message-bc04a9b0-ec83-4a24-83f6-0a4f25ee8896, 发送时间: 1686902338281 弹幕内容: message-c6dd96d0-c938-41e4-b5d8-6275fdf83050, 发送时间: 1686902338290 弹幕内容: message-12b70173-1b86-4370-a7ea-dc0ade135422, 发送时间: 1686902338312 弹幕内容: message-a39c2ef8-8167-4945-b60d-355db6c69005, 发送时间: 1686902338318 弹幕内容: message-2c3bf2fb-5298-472c-958c-c4b53d734e89, 发送时间: 1686902338326 最新的5条弹幕信息 弹幕内容: message-2c3bf2fb-5298-472c-958c-c4b53d734e89, 发送时间: 1686902338326 弹幕内容: message-a39c2ef8-8167-4945-b60d-355db6c69005, 发送时间: 1686902338318 弹幕内容: message-12b70173-1b86-4370-a7ea-dc0ade135422, 发送时间: 1686902338312 弹幕内容: message-c6dd96d0-c938-41e4-b5d8-6275fdf83050, 发送时间: 1686902338290 弹幕内容: message-bc04a9b0-ec83-4a24-83f6-0a4f25ee8896, 发送时间: 1686902338281 Process finished with exit code 0
  • 迁移后验证 数据迁移前如果目标Redis中数据为空,迁移完成后,可以通过以下方式确认数据的完整性: 连接源Redis和目标Redis。连接Redis的方法请参考Redis-cli客户端连接Redis。 输入info keyspace,查看keys参数和expires参数的值。 对比源Redis和目标Redis的keys参数分别减去expires参数的差值。如果差值一致,则表示数据完整,迁移正常。 注意:如果是全量迁移,迁移过程中源Redis更新的数据不会迁移到目标实例。
  • 方案概述 Redis开源社区自2019年5月19日发布Redis 3.0最后一个小版本后,一直未对Redis 3.0进行更新。华为云DCS也于2021年3月发布了停售DCS Redis 3.0的公告。 鉴于Redis 3.0版本较老,开源社区已不再对其进行更新,DCS提供的Redis 4.0/5.0/6.0高版本兼容Redis 3.0,建议客户尽快将DCS Redis 3.0升级到高版本。 DCS暂不支持直接升级实例版本,只能通过数据迁移将低版本实例中的数据迁移到高版本,从而实现Redis版本升级。本章节介绍如何通过数据迁移+交换实例IP的方式升级Redis 3.0实例到高版本。 DCS Redis 3.0实例支持绑定弹性IP公网访问,Redis 4.0/5.0/6.0实例不支持直接绑定弹性IP,公网访问方式需通过ELB实现,开启Redis 4.0/5.0/6.0公网访问的方式请参考开启Redis 4.0/5.0/6.0公网访问并获取公网访问地址,如果用户业务依赖公网访问,升级前请先进行评估。 通过数据迁移的方式升级Redis版本,对客户业务可能有以下影响: 数据同步完成后,需要交换源Redis与目标Redis实例的IP地址,交换IP地址时会有一分钟内只读和30秒左右的中断。 如果升级后实例与原实例密码不一致,数据同步完成后,需要切换访问Redis的密码,切换时需要停止业务。因此,建议升级前后实例密码保持一致。 建议在业务低峰期进行实例升级操作。
  • 前提条件 创建与Redis 3.0相同VPC和子网,相同实例类型、相同访问密码、且规格不小于原实例规格的高版本Redis实例。例如,用户需要将Redis 3.0 16GB主备实例升级到Redis 5.0版本,则需要提前创建一个不小于16GB的Redis 5.0主备实例。 创建Redis实例的操作,请参考创建DCS Redis缓存实例。 手动备份Redis 3.0源实例数据。备份数据的操作,请参考如何导出Redis实例数据?。
  • 迁移实例数据 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择源Redis所在的区域。 单击左侧菜单栏的“数据迁移”。页面显示迁移任务列表页面。 单击右上角的“创建在线迁移任务”。 设置迁移任务名称和描述。 配置在线迁移任务虚拟机资源的VPC、子网和安全组。 迁移任务需要与源Redis和目标Redis实例网络互通,请选择与Redis实例相同的VPC。 迁移任务创建后,会占用一个租户侧IP,即控制台上迁移任务对应的“迁移机IP”,如果目标Redis配置了IP白名单,需要放通迁移机IP。 迁移任务所选安全组的“出方向规则”需放通源端Redis和目标端Redis的IP和端口(安全组默认情况下为全部放通,则无需单独放通),以便迁移任务的虚拟机资源能访问源Redis和目标Redis。 在线迁移任务创建完成后,单击在线迁移任务右侧“操作”列的“配置”,配置在线迁移的源Redis、目标Redis等信息。 迁移方法请选择“全量迁移+增量迁移”,仅当选择“全量迁移+增量迁移”的迁移方法时,支持通过控制台交换源端与目标端实例的IP地址。如果选择“全量迁移”,需要手动切换业务连接Redis的IP地址。 表1 在线迁移方法说明 迁移类型 描述 全量迁移 该模式为Redis的一次性迁移,适用于可中断业务的迁移场景。全量迁移过程中,如果源Redis有数据更新,这部分更新数据不会被迁移到目标Redis。 全量迁移+增量迁移 该模式为Redis的持续性迁移,适用于对业务中断敏感的迁移场景。增量迁移阶段通过解析日志等技术, 持续保持源Redis和目标端Redis的数据一致。 增量迁移,迁移任务会在迁移开始后,一直保持迁移中状态,不会自动停止。需要您在合适时间,在“操作”列单击“停止”,手动停止迁移。停止后,源端数据不会丢失,只是目标端不再写入数据。增量迁移在传输链路网络稳定情况下是秒级时延,具体的时延情况依赖于网络链路的传输质量。 当迁移方法选择“全量迁移+增量迁移”时,支持选择是否启用“带宽限制”。 启用带宽限制功能,当数据同步速度达到带宽限制时,将限制同步速度的继续增长。 选择是否“自动重连”。如开启自动重连模式,迁移过程中在遇到网络等异常情况时,会无限自动重连。 自动重连模式在无法进行增量同步时,会触发全量同步,增加带宽占用,请谨慎选择。 “源Redis实例”和“目标Redis实例”,请分别选择需要升级的Redis 3.0实例和新建的高版本Redis实例。 如果源Redis和目标Redis为密码访问模式,请分别在“源Redis实例密码”和“目标Redis实例密码”处输入实例密码后,单击密码右侧的“测试连接”,检查实例密码是否正确、网络是否连通。如果源Redis和目标Redis为免密访问模式,无需输入密码,直接单击“测试连接”。 在“源DB”和“目标DB”中,可以选择是否需要指定具体迁移的DB。例如源端输入5,目标端输入6时,表示迁移源Redis DB5中的数据到目标Redis的DB6。当源端不指定DB,目标端指定DB时,表示默认迁移源端的全部数据到目标端指定的DB;当目标端不指定DB时,表示默认迁移到与源端对应的DB。本次操作“源DB”和“目标DB”置空即可。 单击“下一步”。 确认迁移信息,然后单击“提交”,开始创建迁移任务。 可返回迁移任务列表中,观察对应的迁移任务的状态,迁移成功后,任务状态显示“成功”。 如果是增量迁移,会一直保持迁移中的状态。 如需手动停止迁移,请选中需要停止的迁移任务,单击“停止”。 数据迁移后,目标端与源端重复的Key会被覆盖。 如果出现迁移失败,可以单击迁移任务名称,进入迁移任务详情页面,查看“迁移日志”。
  • 前提条件 已创建DCS缓存实例,且状态为“运行中”。 客户端所在服务器与DCS缓存实例网络互通: 客户端与Redis实例所在VPC为同一VPC 同一VPC内网络默认互通。 客户端与Redis实例所在VPC为相同region下的不同VPC 如果客户端与Redis实例不在相同VPC中,可以通过建立VPC对等连接方式连通网络,具体请参考:缓存实例是否支持跨VPC访问?。 客户端与Redis实例所在VPC不在相同region 如果客户端服务器和Redis实例不在同一region,仅支持通过云专线打通网络,请参考云专线。 公网访问 客户端公网访问Redis 4.0/5.0/6.0实例时,需要开启实例公网访问开关,具体请参考开启Redis 4.0/5.0/6.0公网访问并获取公网访问地址。 客户端所在服务器已安装JDK1.8以上版本和Intellij IDEA开发工具,下载jedis客户端(点此处下载jar包)。 本文档下载的开发工具和客户端仅为示例,您可以选择其它类型的工具和客户端。
  • 前提条件 已创建DCS缓存实例,且状态为“运行中”。 客户端所在服务器与DCS缓存实例网络互通: 客户端与Redis实例所在VPC为同一VPC 同一VPC内网络默认互通。 客户端与Redis实例所在VPC为相同region下的不同VPC 如果客户端所在VPC与Redis实例不在相同VPC中,可以通过建立VPC对等连接方式连通网络,具体请参考:缓存实例是否支持跨VPC访问?。 客户端与Redis实例所在VPC不在相同region 如果客户端服务器和Redis实例不在同一region,仅支持通过云专线打通网络,请参考云专线。 公网访问 客户端公网访问Redis 4.0/5.0/6.0实例请参考使用Nginx实现公网访问DCS或使用华为云ELB公网访问DCS。 客户端所在服务器已安装JDK1.8以上版本和Intellij IDEA开发工具,下载jedis客户端(点此处下载jar包)。 本文档下载的开发工具和客户端仅为示例,您可以选择其它类型的工具和客户端。
  • 前提概要 前提:体验需要三方配合,首先要开通IoTEdge,用于节点管理和应用管理,再开通IoTDA,用于设备接入与管理,还得有边缘服务器作为节点被IoTEdge纳管。此外还需开通SWR或者OBS服务(取决于驱动应用的开发方式),用于存储已开发并想部署在边缘节点上运行的Docker镜像或者进程包。 边缘服务器:第一点提到的IoTEdge, IoTDA, SWR,OBS是华为云服务,使用华为云租户账号直接免费开通可用,边缘服务器属于硬件,可以购买低配的ECS代替,其EIP则作为边缘服务器的节点IP地址。 在IoTEdge上注册节点:在购买的ECS上执行安装脚本命令,即自动部署好2个系统应用,agent用于节点应用管理,hub用于数据通信。 业务应用需要集成边缘SDK,才能够接受云端下发的配置,集成SDK方式见插件侧开发。 进程包插件:是集成了边缘SDK的应用程序打包而成,可作为边缘节点的自定义应用部署到边缘服务器上,以进程方式运行,可在节点上进行设备数据协议解析、子系统数据解析、数据业务处理、智能计算等。进程包开发方式见基于IoT边缘实现进程包镜像插件部署。 Docker镜像:是集成了边缘SDK的应用程序打包成的容器镜像,可作为边缘节点的自定义应用部署到边缘服务器上运行,可在节点上进行设备数据协议解析、子系统数据解析、数据业务处理、智能计算等。镜像包开发方式见基于IoT边缘实现容器应用镜像插件部署。
  • 购买统一终端业务应用保护及数据管理平台产品license 选择任意浏览器访问华为云,登录账号:https://auth.huaweicloud.com/authui/login.html?locale=zh-cn&service=https%3A%2F%2Fmarketplace.huaweicloud.com%2F#/login 图1 访问华为云 购买统一终端业务应用保护及数据管理平台产品 登陆华为云后,选择云市场,选择安全,选择:“统一终端业务应用保护及数据管理平台” 选择购买规格、数量和购买方式(年或月),点击“立即购买”,确认订单信息,完成支付。 当您购买产品服务后,会有联软工作人员第一时间联系您,帮您开通授权,请您耐心等待。 购买华为云资源(弹性云服务器、数据库、公网IP、带宽) 根据企业项目涉及终端数量,对标云资源规格表,参考表内提供建议参数进行购买。 父主题: 搭建统一终端业务应用保护及数据管理平台系统环境