检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
多活容灾MongoDB监控准备 在使用MAS-MongoDB-SDK进行开发前,需要先做好如下准备: 已创建MAS实例。 在实例下已创建对应的监控器。 配置多活容灾MongoDB监控,请参考MongoDB监控管理。 父主题: 约束
如果使用MAS服务,props配置、etcd配置则必须要配置,sources数据源配置需要与MAS服务中连接池中的命名一致。如果不对接MAS服务,props配置、etcd配置无需配置,sources数据源配置本地所用数据库即可。
事务中使用强制路由 SDK不支持分布式事务,事务与强制指定路由@DynamicRoute同时使用时,以第一条sql选择的数据源为准。 后续sql,即使使用@DynamicRoute指定数据源,也不生效。同一个事务中,不允许访问不同的数据库。 如下,service层的updateUser
原生DB 创建go版本下database/sql包sql.DB数据源,进行mysql操作。 在go.mod文件中引入依赖,即引入MAS-GO-SDK。 github.com/huaweicloud/devcloud-go 结合配置项说明,添加配置文件或者配置信息。 配置文件示例config_mysql.yaml
gorm 创建gorm.io/gorm包gorm.DB数据源,进行mysql操作。 依赖引入,配置文件或配置信息修改参考原生DB。 初始化创建gorm数据源DevSporeGorm,后续执行Mysql相关操作。 配置文件方式创建。 import ( "log" _
本地读单边写策略,配置文件中props.azs信息必须填写,根据实际所属AZ填写,不同AZ的服务,配置文件中props.azs信息也不一样。
pipeline功能使用示例 pipeline功能使用: 需要返回值示例: @Autowired private MultiZoneClient client; public void Demo() { client.executePipeline(pipeline ->
single-read-write(单边读写) single-read-write场景具有以下两个特点: 读操作:同步路由到指定active的Redis;写操作:同步路由到指定active的Redis。 支持MAS动态切换激活数据源。 父主题: 使用场景
beego-orm 创建github.com/astaxie/beego/orm包orm.Ormer数据源,进行mysql操作。 依赖引入,配置文件或配置信息修改参考原生DB。 初始化创建beego-orm数据源DevSporeOrm,后续执行Mysql相关操作。 由于beego-orm
从MAS服务实例页面查询获取 apiVersion: v3 // etcd版本,v3 username: etcduser // etcd用户名,从MAS服务实例页面查询获取 password: etcdpwd // etcd密码,从MAS服务实例页面查询获取
非事务中使用强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicRoute强制指定路由,且相比路由算法,注解指定路由优先级更高。存在注解指定路由的场景下,优先根据注解指定进行路由。 注解@DynamicRoute指定路由分为两部分:source和hint,可单独只指定
MAS仲裁自动切换的检测机制是什么?是如何做到秒级切换的? 检测机制策略是用户自行配置的。 目前多活容灾解决方案是通过MAS自动监控APIG网关入口,动态监测DNS切换。 父主题: MAS产品相关问题
根据是否接入MAS服务,确定是否配置etcd部分。 接入MAS服务,etcd配置必填,以及servers部分下Redis源列表与MAS服务中配置的源保持一致。 无接入MAS服务,etcd配置无须配置,servers部分下Redis源列表以实际使用为准。
配置如下: # 基础信息 - 可选项, 当配置etcd后为必选 props: version: v1 // 项目版本号,自定义 appId: xxx // 应用ID,从MAS服务实例页面查询获取 monitorId: xxx // 监控器ID,从MAS服务实例页面查询获取
local-read-write(单边读写) single-read-write场景具有以下两个特点: 读操作:同步路由到指定active的elasticsearch;写操作:同步路由到指定active的elasticsearch。 支持MAS动态切换激活数据源。 父主题: 使用场景
props.azs 服务所属AZ信息 空 路由算法为本地读单边写时必填。 props配置项中的值都是取自于本服务在MAS服务注册时展示的值。 props配置项中的值与在MAS服务中的来源请参考props、etcd配置项在MAS服务中如何查询。
多活容灾方案对网络是不是也有要求?否则网络不稳定很差或网络抖动场景下,是不是会存在误切现象? 网络是有明确要求的,包括时延等,通常要求在5ms内,这些要求也会在容灾规范中承载。 针对应用和数据库探活时,不是只探活1次就切换,用户可以在界面上配置策略,比如网络情况不是很好,可以配置成间隔
spring-boot-data-redis RedisTemplate RedisTemplate是Spring Data Redis提供的一个用于操作Redis的模板类。 它封装了对Redis的常见操作,如存储、读取、删除等,简化了与Redis交互的过程。 对接RedisTemplate
Spring项目接入MAS-Mongo-SDK MAS-Mongo-SDK使用Maven获取相关依赖,根据实际情况设置Maven远程仓库地址等相关配置。 在pom.xml文件中引入如下依赖,下面mas.version版本为最新版本,依赖组件版本参考如何选择组件版本。 <properties
运行MAS-DB-SDK问题参考 根据上述步骤配置MAS-DB-SDK后,确认相关配置信息都已包含且有效,运行项目可能会遇到一些问题,主要的问题及其相关解决过程如下: Logback-classic及log4j-to-slf4j的包冲突问题。 关键错误信息如下所示: 出现原因: 对接