在这里,我试图在 AWS RDS 中实现以下目标。我有一个 MySQL 数据库实例正在运行。我正在考虑创建一个只读副本,以便拥有一些额外的负载共享功能。
我有一个在 EC2 上运行的 Spring Boot 应用程序。目前我连接到数据库的方式是在 application.yml 中添加以下属性:
datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:mysql://DB_HOSTNAME:3306/DB_DATABASE?useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC
username: DB_USERNAME
password: DB_PASSWORD
我的问题是:
- 如果我创建一个只读副本,我是否需要编写一些特殊的代码来连接它?
- 我是否需要为每个数据库实例建立多个连接池?
- 从代码的角度来看,这是如何扩展的,如果我有 5 个只读副本,我如何在代码中管理它?
- 如何将我的数据库调用定向到不同的副本?这个决定的依据是什么?
如果有任何链接/视频/文档,您可以指向我。Spring boot 不是必需品,我需要了解什么是利用 Java 应用程序中的只读副本的好方法。
谢谢