检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开发简介 本文主要描述如何使用MAS-Mongo-SDK在多活容灾场景下对涉及MongoDB的服务进行开发,结合样例讲解MAS-Mongo-SDK在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 熟悉Mongo的常用操作。
其它 MAS端配置与本地配置不一致时,哪一个生效? 答:MAS端配置与本地配置,MAS端配置覆盖本地配置,MAS端配置生效。 父主题: 常见问题
环境准备 在进行应用开发时,准备环境包括开发环境准备所示任务。 表1 开发环境准备 准备项 说明 准备操作系统 Windows系统,推荐使用Windows 7及以上版本。 安装Go 开发环境的基本配置。Go版本要求1.14.6及以上。 安装配置Goland 开发程序的工具。Goland使用11
敏感信息加解密 配置文件中配置密文信息。可以解密的配置有devspore.dcs.Redis.servers.dc1.password,devspore.dcs.Redis.servers.dc1.sentinelPassword,devspore.dcs.etcd.password
不支持的接口 SDK中部分jdbc相关接口不支持,详细见SDK中com.huawei.devspore.datasource.jdbc.unsupported包。下面列出了Connection、PreparedStatement、ResultSet中的部分不支持接口,如下: Connection接口。
使用指南 在go.mod文件中引入依赖,即引入MAS-GO-SDK。 github.com/huaweicloud/devcloud-go 结合配置项说明,添加配置文件或者配置信息。 配置文件示例config_Redis.yaml props: version: v1 appId:
强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicReadRoute指定读操作的路由。注解@DynamicReadRoute指定路由的参数:source,用于选择数据源,可以选择对应的枚举值:MongoSource.ACTIVE, MongoSource.LOCAL。
使用限制 session使用 仅支持通过以下接口获取session: com.huawei.devspore.mas.mongo.core.client.Cluster.startSession() com.huawei.devspore.mas.mongo.core.client
开发简介 本文主要描述如何使用MAS-GO-SDK在多活容灾场景下对涉及Mysql的服务进行开发,结合样例讲解在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Go语言,并有Go程序开发经验。 熟悉module开发模式。 熟悉Mysql的常用操作。 父主题: 概述
多活容灾监控准备 请参考MySQL/Oracle/PostgreSQL监控管理,配置多活容灾MySQL/Oracle/PostgreSQL监控。 父主题: 约束
开发简介 本文主要描述如何使用MAS-GO-SDK在多活容灾场景下对涉及Redis的服务进行开发,结合样例讲解在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Go语言,并有Go程序开发经验。 熟悉module开发模式。 熟悉Redis的常用操作。 父主题: 概述
开发流程 开发的流程如下所示: 版本获取及引入依赖 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建DevsporeClient客户端 通过配置客户端信息,引入MAS-GO-SDK-Redis创建DevsporeClient客户端。 支持以代码方式添加
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过go.mod引入需要的依赖,是使用MAS-GO-SDK的基础。 配置创建数据源。 通过配置数据源驱动信息,引入MAS-GO-SDK-Mysql创建数据源。 支持以代码方式添加配置信息或者从YAML文件读取配置信息。 按需引入数据源。
Redis命令参考 MultiZoneClient集成了Redis的命令,常用命令使用方式参考如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
常用概念 MAS-GO-SDK-Mysql是基于go-sql-driver/mysql v1.6.0开发的实现支持多活容灾服务的Mysql驱动源,其宗旨是促进开发者对于异地多活的Mysql关注分离,从而让使用者能够将精力更集中地放在处理业务逻辑上。 父主题: 概述
ShedLock 对接ShedLock。 import com.huawei.devspore.mas.Redis.core.MultiZoneClient; import com.huawei.devspore.mas.Redis.spring.boot.cache.DcsConnectionFactory;
使用多数据源 上面的方式都是只引入一个数据源,在某些场景下,需要引入多个数据库,操作不同的数据库,此时,可以通过配置不同前缀来注入多个datasource的bean,方法如下: 引入依赖。 <dependency> <groupId>com.huaweicloud.devspore</groupId>
SingleReadWriteClient命令参考 读命令:public<T> T executeRead(Function<RestHighLevelClient, T> command) 写命令:public<T> T executeWrite(Function<RestHighLevelClient
如何选择组件版本 MAS-Mongo-SDK 1.3.1-RELEASE springboot适用版本:2.7.0 - 2.7.2 表1 核心依赖组件版本 GroupId ArtifactId Version 备注 org.springframework spring-aspects
分布式锁场景最佳实践 分布式锁场景需根据所选取的路由模式来选择合适的策略。 路由模式为single-read-write, single-read-async-double-write时 由于读写都在同一边,分布式锁不受影响。 路由模式为local-read-single-wri