我注意到我的PostgreSQL Amazon RDS Read副本上发生了奇怪的事情。
我们对几十个并行的高负载读取请求进行了“压力测试”。在测试开始时性能非常好,但随后迅速下降,而PostgresSQL本身仍然保留了几十个select
查询,这些查询在堆叠之前快速执行。
我在RDS控制台中打开了Monitor statistics选项卡,并且看到了可见性能降低读取IOPS数量也从3000 /秒降低到300 /秒,并且长时间没有超过300 /秒iops。 同时CPU使用率非常低~3%,RAM或存储空间没有任何问题。
所以我的问题是:对于只读副本,读取IOPS有任何记录的限制吗?看起来Amazon RDS在真正高负载(3000 /秒)后自动降低了IOPS的上限。
只读副本服务器在db.t2.large实例上运行,具有100 GB通用(SSD)存储类型,并具有禁用的固定IOPS功能。
答案 0 :(得分:3)
您描述的行为与底层存储类GP2的记录完全相同。
GP2旨在提供3 IOPS / GB的一致基准性能
小于1 TB的GP2卷也可以突破高达3,000 IOPS。
100GB卷上的3 IOPS / GB为300 IOPS。
有关IOPS信用如何工作的说明,另请参阅http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html。当您的系统不忙时,它会建立可用于下一次爆发的信用。