检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
版本约束 MAS-Mongo-SDK对使用到的工具及相关组件的版本有所约束,如下表: 约束项 约束版本 JDK 1.8.0_262及以上版本 Maven 3.3.0及以上版本 MongoDB版本 4.4及以下版本 SDK组件依赖 见如何选择组件版本 spring-boot版本 2.4.0
环境准备 在进行应用开发时,准备环境包括开发环境准备所示任务。 表1 开发环境准备 准备项 说明 准备操作系统 Windows系统,推荐使用Windows 7及以上版本。 安装Go 开发环境的基本配置。版本要求1.14.6及以上。 安装配置Goland Goland使用11.0及以上版本
开发简介 本文主要描述如何使用MAS-Redis-SDK在多活容灾场景下对涉及Redis的服务进行开发,结合样例讲解MAS-Redis-SDK在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 熟悉Redis的常用操作
版本依赖 下面是MAS-Redis-SDK中引的依赖及依赖版本: 所属模块 依赖名称 依赖版本 scope devspore-dcs com.huaweicloud.devspore:devspore-mas-common latest compile com.fasterxml.jackson.core
您可以选择在华为云官网购买两个Redis,也可以自己在本地两台机器上部署两个Redis。 此处以在华为云购买Redis为例,建议将两个数据库部署在同一Region下不同的可用区,以提供不同功能可用区之间的故障转移能力和高可用性。 请参考购买Redis实例,准备Redis数据库。
创建好“同城多活”类型的命名空间,分区类型选择“华为云”。具体详情请参见创建命名空间。 在已创建的命名空间下购买MAS多活管理中心。具体详情请参见购买多活管理中心。
版本依赖 下面是MAS-DB-SDK中引入的依赖及依赖版本: 所属模块 依赖名称 依赖版本 scope devspore-datasource com.huaweicloud.devspore:devspore-mas-common latest compile net.jodah
环境约束 安装的工具包括JDK、Maven、IDEA ,配置对应的环境变量,确保本地开发环境可用。 使用MAS-DB-SDK组件需具备一定的Java后端、持久层框架集成等知识。 准备项 说明 准备操作系统 Windows系统。Windows版本要求:Windows 7及以上版本。
参数配置说明 local-read-async-double-write配置示例: devspore: dcs: props: version: v1 app-id: xxxx monitor-id: xxxx cloud
使用场景 本模块客户端创建支持single-read-write(单读写),local-read-single-write(本地读单写),double-write(本地读双写)3种模式,其中Redis节点可配置cluster(集群), master-slave(主从), normal
敏感信息加解密 配置文件中配置密文信息。可以解密的配置有devspore.dcs.redis.servers.dc1.password,devspore.dcs.redis.servers.dc1.sentinelPassword,devspore.dcs.etcd.password
使用场景 本模块数据源创建支持single-read-write(单读写),local-read-single-write(本地读单写)2种模式,同时SDK内置实现了读写分离,可通过配置RANDOM(随机)或ROUND_ROBIN(轮询)负载均衡算法,搭配MAS可实现多活容灾;同时内置故障注入功能可创建带有注入故障的实例
不支持的接口 SDK中部分jdbc相关接口不支持,详细见SDK中com.huawei.devspore.datasource.jdbc.unsupported包。下面列出了Connection、PreparedStatement、ResultSet中的部分不支持接口,如下: Connection
表2 数据中心配置信息 参数 配置说明 云选择 被监控的数据库部署的环境,本实践配置为“华为云”。 局点 被监控数据库所在区域,选择本实践命名空间所选择的区域。
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过Maven引入需要的依赖,是使用MAS-Redis-SDK的基础。 添加客户端配置。 通过添加客户端配置,接入MAS-Redis-SDK。 创建MultiZoneClient客户端。 MAS-Redis-SDK提供读取YAML
开发简介 本文主要描述如何使用MAS-Mongo-SDK在多活容灾场景下对涉及MongoDB的服务进行开发,结合样例讲解MAS-Mongo-SDK在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 熟悉Mongo
参数配置说明 全部配置 参数名称 是否必选 参数类型 取值范围 描述 devspore.css.etcd 否 参考MAS-DB-SDK - - devspore.css.prop 否 参考MAS-DB-SDK - - devspore.css.esservers 是 Map<String
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建数据源。 通过配置数据源驱动信息,引入MAS-GO-SDK-Mysql创建数据源。 支持以代码方式添加配置信息或者从YAML文件读取配置信息。 按需引入数据源
内置注入故障 带波动的延时故障 基于延时基数和抖动幅度创建带有波动的延时故障。具体触发要结合故障注入功能是否开启、注入故障概率、延时注入开关、延时故障生效概率决定。 异常故障 内置如下异常故障,结合故障注入功能是否开启、注入故障概率、异常注入开关、异常故障生效概率决定是否触发,触发故障为对应模块随机一种异常
强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicReadRoute指定读操作的路由。注解@DynamicReadRoute指定路由的参数:source,用于选择数据源,可以选择对应的枚举值:MongoSource.ACTIVE, MongoSource.LOCAL