检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置项说明 表1 配置参数详解 参数名称 是否必选 参数类型 取值范围 描述 props 否 PropertiesConfiguration 请参考PropertiesConfiguration数据结构说明。 MAS监控配置,配合etcd使用。 etcd 否 EtcdConfiguration
使用指南 Mysql配置示例 Redis配置示例 父主题: 故障注入
异常故障 内置如下异常故障,结合故障注入功能是否开启、注入故障概率、异常注入开关、异常故障生效概率决定是否触发,触发故障为对应模块随机一种异常。 表1 异常故障 模块 故障名称 描述 全模块 SocketErr 网络连接异常。 IORWErr IO异常-读写关闭。 IOUEErr IO异常-意外结束。
spring-boot-data-redis ShedLock Redisson Lock 自定义DcsConnection 父主题: MAS-Redis-SDK使用手册
强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicReadRoute指定读操作的路由。注解@DynamicReadRoute指定路由的参数:source,用于选择数据源,可以选择对应的枚举值:MongoSource.ACTIVE, MongoSource.LOCAL。
写操作,路由到active数据源 action.count(xxx); // 读操作,路由到本地数据源 }); 2. 有限制的命令 表1 MAS-Mongo-SDK有限制的命令 命令名称 使用限制 原因 MongoTemplate.findAllAndRemove() 本地读单边写模式下,此命令不支持。
开发简介 本文主要描述如何使用MAS-GO-SDK在多活容灾场景下对涉及Mysql的服务进行开发,结合样例讲解在开发过程中如何使用。 本文假设您已经具备如下开发能力: 熟悉Go语言,并有Go程序开发经验。 熟悉module开发模式。 熟悉Mysql的常用操作。 MAS-GO-SDK-Mysql
timeBetweenEvictionRunsMillis 否 int - 空闲连接检测线程,检测的周期,毫秒数。如果为负值,表示不运行检测线程。默认为-1。 表6 PropertiesConfiguration数据结构说明 参数名称 是否必选 参数类型 取值范围 描述 version
多活容灾监控准备 在使用MAS-DB-SDK进行开发前,需要先做好如下准备: 已创建MAS实例。 在实例下已创建对应的监控器。 请参考MySQL/Oracle/PostgreSQL监控管理,配置多活容灾MySQL/Oracle/PostgreSQL监控。 父主题: 约束
单边读写 此模式为MAS-Mongo-SDK的默认路由模式,在单边读写模式下,对Mongo的读写操作都在同一Mongo数据库(dc1或dc2)进行,通过配置文件中的active字段或MAS界面配置活跃节点来指定。(通过注解指定数据源的场景例外,注解强制指定路由见强制路由)。 配置示例:
Redis命令参考 MultiZoneClient集成了Redis的命令,使得在多个区域进行数据管理变得更加便捷和高效。 它提供了丰富的功能,包括数据读写、事务管理、数据类型操作等,可以满足各种复杂的业务需求。 常用命令使用方式参考如下: 1 2 3 4 5
配置项说明 表1 InjectionProperties数据结构说明 参数名称 是否必选 参数类型 取值范围 描述 active 是 bool true/false 默认false 故障注入功能是否开启。 duration 是 int - 故障注入持续时间,单位:秒。 interval
- Spring接入涉及组件版本参考。 表2 Spring涉及组件版本 GroupId ArtifactId Version 备注 spring-aspects org.springframework 5.3.9 - 其它涉及组件版本参考。 表3 其它涉及组件版本 GroupId ArtifactId
其中RestHighLevelClient为Elasticsearch官方客户端。 父主题: MAS-ElasticSearch-SDK使用手册
如何选择组件版本 MAS-Mongo-SDK 1.3.1-RELEASE springboot适用版本:2.7.0 - 2.7.2 表1 核心依赖组件版本 GroupId ArtifactId Version 备注 org.springframework spring-aspects
DcsConnetion命令参考 DcsConnection已实现部分RedisConnection的接口。 用户有需要时可以继承重写此类方法。 常用命令使用方式参考如下: public Long append(@Nonnull byte[] key, @Nonnull byte[]
success-{}", Thread.currentThread()); } } } 父主题: MAS-Redis-SDK使用手册
使用多数据源 上面的方式都是只引入一个数据源,在某些场景下,需要引入多个数据库,操作不同的数据库,此时,可以通过配置不同前缀来注入多个datasource的bean,方法如下: 引入依赖。 <dependency> <groupId>com.huaweicloud.devspore</groupId>
ShedLock ShedLock是一个用于分布式任务调度的开源库。 它提供了一种简单而可靠的方式来确保在分布式环境中只有一个节点执行指定的任务。 对接ShedLock命令参考如下。 import com.huawei.devspore.mas.redis.core.MultiZoneClient;
ds2的type和ymlFile同样配置即可。 sharding配置参考shardingsphere官网,下面给出读写分离和分库分表的例子: 分库分表: schemaName: ms dataSources: ds0: dataSourceClassName: com