使用Hikari切换至备用RDS区域时出错的问题求助
使用Hikari切换至备用RDS区域时出错的问题求助
大家好,我最近在给现有项目做RDS主备切换的功能,遇到了一些困惑,想过来请教一下。
我的项目原本是用Hikari创建数据源连接的,现在需要实现一个功能:当当前连接的主RDS实例宕机时,应用能自动切换到备用区域的RDS实例。为了做本地测试,我在docker-compose.yml里配置了两个MySQL实例来模拟不同区域的RDS,配置内容如下:
version: '3.7' services: mysql-east: image: docker.ouroath.com:4443/docker.io/library/mysql:8.0.35 environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes ports: - '3306:3306' # Exposing MySQL for east region on port 3306 volumes: - ./mysql-east-dump:/docker-entrypoint-initdb.d networks: - app-network mysql-west: image: docker.ouroath.com:4443/docker.io/library/mysql:8.0.35 environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes ports: - '3307:3306' # Exposing MySQL for west region on port 3307 volumes: - ./mysql-west-dump:/docker-entrypoint-initdb.d networks: - app-network
目前我已经搭好了本地测试环境,但在配置Hikari实现故障自动切换的过程中遇到了问题——不知道该如何正确配置Hikari的参数,或者有没有合适的扩展方式,来实现当主库(mysql-east)不可用时,自动将连接切换到备库(mysql-west)。尝试了一些配置后,要么切换逻辑不生效,要么切换时出现连接异常,想请教下有没有成熟的方案或者配置示例可以参考?
备注:内容来源于stack exchange,提问作者user1314601
相关产品推荐
相关产品推荐

