本节我们将为Postgres RDS添加read replica
来提升它的读性能
RDS read replica
为 RDS 实例提供增强性能,它们可以轻松地弹性扩展,超过单个数据库实例的容量限制,以应对读取繁重的数据库工作负载。 可以给RDS创建库1 到 5 个只读副本,从而提高读取吞吐量。 当需要时,只读副本也可以提升为独立的数据库实例:
进入rds-pg-labs
数据库,在Actions中点击Create read replica
:
为这个实例命名为rds-pg-labs-read
:
其他选项保持默认,它会保持跟主库一样的配置。在Availability
部分选择Single DB Instance
:
最后点击创建。创建read replica的过程大概持续十分钟,它先从主库的snaptshot
中恢复数据,再使用异步复制从主库中同步过来相差的数据。
创建完成后,得到read replica
的连接地址:
连接到read replica, 并执行SQL检查和主库的复制延迟:
SELECT extract(epoch from now() - pg_last_xact_replay_timestamp()) AS replica_lag
本节的创建read replica
操作也可用CLI完成:
AWSREGION=`aws configure get region`
aws rds create-db-instance-read-replica \
--db-instance-identifier rds-pg-labs-read \
--source-db-instance-identifier rds-pg-labs \
--db-instance-class db.t3.medium \
--region $AWSREGION