检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
业应用多活部署已成为行业趋势。 多活高可用服务(Multi-Site High Availability Service,简称MAS)源自华为消费者多活应用高可用方案,提供从流量入口、数据到应用层的端到端的业务故障切换及容灾演练能力,保障故障场景下的业务快速恢复,提升业务连续性。
架构演进:分区化管理,更小的故障爆炸半径。 多活管理中心版本规格 购买多活管理中心即创建一个多活实例,多活实例版本规格支持铂金版,铂金版实例支持华为云内同城多活场景、异地多活场景。
自定义监控器名称。 异常通知设置 默认为“关”。 若设置为“开”: 当监控器或被监控的数据库异常时会及时给用户发送异常通知或告警通知。支持华为云消息通知服务,请先配置密钥。 默认将开启云监控,请前往云监控确认是否已创建MAS事件监控告警规则,如已创建请忽略。 通知主题 若异常通知
填写命名空间的描述信息。 企业项目 选择对应的企业项目,可将命名空间和企业项目关联。仅企业账号可见此配置项。 分区类型 选择主备多活分区的类型。 华为云。 第三方数据中心。 分区名称 填写主备多活分区的名称,根据规划自定义。 描述 填写主备多活分区的描述信息。 区域 配置主备分区类型对应的区域。
自定义监控器名称。 异常通知设置 默认为“关”。 若设置为“开”: 当监控器或被监控的数据库异常时会及时给用户发送异常通知或告警通知。支持华为云消息通知服务,请先配置密钥。 默认将开启云监控,请前往云监控确认是否已创建MAS事件监控告警规则,如已创建请忽略。 通知主题 若异常通知
强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicReadRoute指定读操作的路由。注解@DynamicReadRoute指定路由的参数:source,用于选择数据源,可以选择对应的枚举值:MongoSource.ACTIVE, MongoSource.LOCAL。
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过Maven引入需要的依赖,是使用MAS-Redis-SDK的基础。 添加客户端配置。 通过添加客户端配置,接入MAS-Redis-SDK。 创建MultiZoneClient客户端。 MAS-Redis-SDK提供读取YAML文件创建客户端的方法。
/etc/bashrc问题的自处理方法 问题现象 报错内容: /etc/bashrc: line 101: TMOUT: readonly variable parse fail 创建应用-> 纳管k8s资源时发生报错。 图1 纳管k8s 故障注入时发生报错。 图2 故障注入 根因分析
非事务中使用强制路由 除了根据路由算法配置路由,SDK还支持通过注解@DynamicRoute强制指定路由,且相比路由算法,注解指定路由优先级更高。存在注解指定路由的场景下,优先根据注解指定进行路由。 注解@DynamicRoute指定路由分为两部分:source和hint,可单
开发流程 开发的流程如下所示: 版本获取及引入依赖 通过Maven引入需要的依赖,是使用MAS-Mongo-SDK的基础。 添加客户端配置 通过添加客户端配置,接入MAS-Mongo-SDK。 创建MongoClient客户端 MAS-Mongo-SDK提供读取YAML文件创建客户端的方法。
开发流程 开发的流程如下所示: 版本获取及引入依赖。 通过Maven引入需要的依赖,是使用MAS-DB-SDK的基础。 添加客户端配置。 通过添加客户端配置,接入MAS-DB-SDK。 创建DataSource。 MAS-DB-SDK提供读取YAML文件创建DataSource的
自定义DcsConnection 使用场景:使用RedisTemplate命令时,DcsConnection中的接口没有覆盖到的情况,可以自定义扩展DcsConnection。 自定义DcsConnection。 type选择为normal时使用。 import com.huawei
SpringBoot项目接入MAS-DB-SDK 引入MAS-DB-SDK组件坐标,下面version版本为最新版本,依赖组件版本参考如何选择组件版本。 <dependency> <groupId>com.huaweicloud.devspore</groupId>
Spring项目接入MAS-Redis-SDK 引入依赖。 组件版本version使用最新版本,版本的获取参考MAS-SDK版本。 <dependency> <groupId>com.huaweicloud.devspore</groupId> <artifact
准备资源 概述 在使用边缘版多活实例前,需要准备虚拟机资源、安装Docker、挂载磁盘,以及检查虚拟机与MAS侧的端口是否连通。 虚拟机资源准备有以下两种场景,您可以根据实际场景准备虚拟机资源。 首次创建多活实例,需要根据MAS实例资源要求申请新的虚拟机。 在已创建过多活实例且实例已删除的虚拟机上重新创建多活实例。
Spring项目接入MAS-Mongo-SDK MAS-Mongo-SDK使用Maven获取相关依赖,根据实际情况设置Maven远程仓库地址等相关配置。 在pom.xml文件中引入如下依赖,下面mas.version版本为最新版本,依赖组件版本参考如何选择组件版本。 <properties>
使用多数据源 上面的方式都是只引入一个数据源,在某些场景下,需要引入多个数据库,操作不同的数据库,此时,可以通过配置不同前缀来注入多个datasource的bean,方法如下: 引入依赖。 <dependency> <groupId>com.huaweicloud.devspore</groupId>
运行MAS-DB-SDK问题参考 根据上述步骤配置MAS-DB-SDK后,确认相关配置信息都已包含且有效,运行项目可能会遇到一些问题,主要的问题及其相关解决过程如下: Logback-classic及log4j-to-slf4j的包冲突问题。 关键错误信息如下所示: 出现原因:
Spring项目接入MAS-DB-SDK 引入MAS-DB-SDK组件坐标,下面version版本为最新版本,依赖组件版本参考如何选择组件版本。 <dependency> <groupId>com.huaweicloud.devspore</groupId> <artifac
分布式锁场景最佳实践 分布式锁场景需根据所选取的路由模式来选择合适的策略。 路由模式为single-read-write, single-read-async-double-write时 由于读写都在同一边,分布式锁不受影响。 路由模式为local-read-single-wri