Rya*_* Lv 7 postgresql amazon-web-services amazon-rds
我有一个带有四个副本的主 RDS 实例。
主数据库:Postgres、4 个 vCPU、16GB RAM、us-west-2a
Replica1:Postgres、4 个 vCPU、16GB RAM、us-west-2a、200G SSD(无流量,仅用于测试)
Replica2:Postgres、4 个 vCPU、16GB RAM、us-west-2b、200G SSD(无流量,仅用于测试)
Replica3:Postgres、2 个 vCPU、8GB RAM、us-west-2b、200G SSD(流量不大)
Replica4:Postgres、2 个 vCPU、8GB RAM、us-west-2b、200G SSD(流量很少)
在没有任何高 IOPS 的情况下,主数据库和只读副本之间的延迟超过 16 秒,有时甚至达到 30 秒。
我花了很多精力来挖掘滞后的根本原因。
以下是没有任何流量的副本的 CloudWatch 报告。
这是 IO 信用报告,过去 6 小时始终为 100%,我不认为这是由 IO 问题引起的。
即使我不认为这是由 IO 引起的,我还是决定将数据库磁盘从 GP2 升级到 IO1,并配置 3000 IOPS。
但这不起作用,滞后仍然存在。
回复没有流量!它与 postgresql 参数无关max_standby_streaming_delay并且hot standby
流量始终低于1M/s
我创建了两个全新的 m5.large PostgreSQL 实例来验证这个假设,并使用 pgbench 进行基准测试。
主要:M5.large,配置 3000 IOPS。
副本:M5.xlarge,具有 1000 个预配置 IOPS。
我很惊讶!延迟范围为 0 到 24 秒。
你可能会问为什么不把这个问题发布到aws上呢?
我在aws论坛上问过这个问题,但没有人回答我。
我感觉被欺骗了,想从您的经验中了解复制滞后的真正价值。
AWS Amazon Aurora 提供延迟的估计值(低于 100 毫秒)。这是我的基准测试报告,延迟低于 25 毫秒。
当谈到 AWS RDS PostgreSQL 时:
谁能告诉我 aws RDS PostgreSQL 复制延迟的正常值是多少?
AWS RDS PostgreSQL 承诺的复制延迟估计值是多少?
小智 3
根据RDS 文档中PostgreSQL 的读取副本限制:
如果源数据库实例上没有发生用户事务,PostgreSQL 只读副本会报告最多五分钟的复制延迟。
当有一个每隔几毫秒写入数据库的脚本时,您是否可以按照本答案中的建议检查复制延迟?
| 归档时间: |
|
| 查看次数: |
6664 次 |
| 最近记录: |