检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
和客户端。 实施步骤 登录MySQL数据库所在服务器。 在MySQL数据库所在服务器安装Redis客户端用来进行数据的提取、传输和转换。安装Redis客户端请参考安装Redis客户端。 分析源端数据结构,在MySQL数据库所在服务器中创建如下的迁移脚本,保存文件名为migrate
存实例配置为VPC终端节点支持的服务,用户可以直接通过VPC终端节点服务的地址访问。 Redis Proxy集群实例提供的IP地址和域名,即为VPC终端节点服务的地址。 ELB 弹性负载均衡服务器,采用集群高可用方式,支持多可用区部署。 Proxy Redis集群代理服务器。用于
测能力明显强于Lettuce,可靠性更强。 Jedis连接池参数配置建议 表1 Jedis连接池参数配置建议 参数 配置介绍 配置建议 maxTotal 最大连接,单位:个 根据Web容器的Http线程数来进行配置,估算单个Http请求中可能会并行进行的Redis调用次数,例如:
IP白名单中,添加方式请参考配置Redis访问白名单。 配置客户端公网IP到ELB IP白名单(可选) 如果需要配置公网IP白名单,请将访问Redis实例的公网IP添加到ELB的IP地址组。添加ELB IP地址组的操作请参考访问控制IP地址组。 配置ELB IP地址组(IP白名单)后,仅添加到ELB
service 在本地浏览器中输入服务器地址(ECS公网IP地址),查看安装是否成功。 如果出现下面页面,则表示安装成功。 配置Nginx Nginx安装后,需要配置请求转发规则,告诉Nginx哪个端口收到的请求,应该转发到后端哪个Redis实例。 打开并修改配置文件。 cd /etc/nginx
息不及时,可能导致DCS实例消息堆积,当达到消息堆积阈值(默认值为32MB),或者达到某种程度(默认8MB)一段时间(默认为1分钟)后,服务器端会自动断开该客户端连接,避免导致内部内存耗尽。 客户端需要支持重连。 当连接断开之后,客户端需要使用subscribe或者psubscr
例的数据迁移到高版本实例上。 图1 Redis单机实例示意图 示意图说明: VPC 虚拟私有云。实例的内部所有服务器节点,都运行在相同VPC中。 客户应用 运行在ECS上的客户应用程序,即实例的客户端。 Redis实例兼容开源协议,可直接使用开源客户端进行连接,关于多语言客户端连接示例,请参考用户指南的连接缓存实例。
据会保留。 已创建弹性云服务器ECS,创建弹性云服务器的方法,请参见创建弹性云服务器。 ECS请选择与DCS Cluster集群实例相同虚拟私有云、子网和安全组,并且需要绑定弹性公网IP。 自建的源Redis Cluster集群如果是在本地或者其他云厂商的服务器上自建,需要允许被公网访问。
DCS实例是否支持跨VPC访问? 跨VPC访问,即客户端和实例不在同一个VPC。 对于未开启公网访问的实例,一般情况下,不同VPC间网络不互通,不在同一VPC下的弹性云服务器无法访问DCS缓存实例。 可以通过创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问DCS缓存实例。 用户通过VPC对等访问
Failed 未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。
安全组和白名单 华为云DCS支持通过安全组或者白名单限制访问缓存实例的客户端,需要满足条件才可以访问DCS实例。 由于Redis不同版本实例的部署模式不一样,DCS在控制访问缓存实例的方式也不一样,差别如下: Redis 3.0/Redis 6.0企业版:通过配置安全组访问规则控制,不支持白名单功能。
使用DCS实现游戏开合服的数据同步 游戏开合服,指大型网络游戏开启新服务器(服务区)或将新老服务器合并。在游戏开合服过程中,会遇到如何将不同服务器数据同步的问题。通过DCS服务Redis的消息队列pub/sub机制,可以将数据变更消息发布到Redis的频道中,其他游戏服务器订阅该频道,接收数据变更消息,从而实现
力,否则在变更规格后可能需要重启客户端应用。 垂直扩容(分片数不变,分片容量增加): 如果节点所在的虚拟机内存容量不足,会发生节点迁移,迁移时业务连接会有闪断和只读。 如果虚拟机内存容量充足,则直接扩大节点容量,对业务无影响。 说明: Redis 3.0版本集群实例不支持垂直扩缩容。
目标Redis有的数据会保留。 已创建弹性云服务器ECS,创建弹性云服务器的方法,请参见创建弹性云服务器。 ECS请选择与DCS Cluster集群实例相同虚拟私有云、子网和安全组,并且需要绑定弹性公网IP。 安装Rump 登录弹性云服务器。 下载Rump的release版本。
入侵风险。 客户端应用所在ECS设置防火墙。 客户端应用所在的服务器建议配置防火墙过滤规则。 设置实例访问密码。 配置实例白名单。 Redis-cli使用 隐藏密码 安全问题:通过在redis-cli指定-a参数,密码会被ps出来,属于敏感信息。 解决方案:修改Redis源码,在
创建3台弹性云服务器(ECS),ECS选择与实例相同可用区、VPC、子网和安全组。 如果是测试单机或主备实例,创建1台ECS即可。 在每台ECS上安装redis-benchmark。可通过以下两种方式安装Redis-server,安装Redis-server的同时,会同步安装benchmark。
删除实例 Redis deleteDCSInstance 修改实例信息 Redis modifyDCSInstanceInfo 修改实例配置 Redis modifyDCSInstanceConfig 修改实例密码 Redis modifyDCSInstancePassword
图2 为DCS缓存实例选择企业项目 通过成本标签进行成本分配 标签是华为云为了标识云资源,按各种维度(例如用途、所有者或环境)对云资源进行分类的标记。推荐企业使用预定义标签进行成本归集,具体流程如下: 图3 为云服务器添加标签 详细介绍请参见通过成本标签维度查看成本分配。 使用成本单元进行成本分配
在创建缓存实例时,需要配置实例所在的可用区ID,可通过该接口查询可用区的ID。例如,在华北-北京1区域有可用资源的分区创建缓存实例,可从接口响应消息中,查找resource_availability字段为true的可用区,该记录对应的id即是创建缓存实例时需要配置的可用区ID。 URI
请求可以同时执行,但是因为两个机器运行在两个不同的Java虚拟机中,因此每个机器加的锁不是同一个锁,而不同的锁只对属于自己Java虚拟机中的线程有效,对其他Java虚拟机的线程无效。此时,Java提供的原生锁机制在多机部署场景下就会失效,出现库存超卖的现象。 解决方案 基于上述场