我的实例的 AWS RDS max_connection 设置是否有限制?

时间:2021-01-16 23:03:44

标签: postgresql amazon-web-services amazon-rds

我有一个免费的 RDS PostgreSQL 数据库 db.t2.micro(1 核,1 Gib)。我的架构导致 RDS 崩溃,因为它达到了最大并发连接数。

当我查询 select * from pg_settings where name='max_connections' 时,结果是 87。

我根据内存找到了关于每个实例的 max_connection 属性容量的公式:

LEAST({DBInstanceClassMemory/9531392},5000)

对于我的实例,数字是 104,我将参数组修改为这个值,我的 RDS 仍然崩溃。

我最后一次尝试将 max_connections 更新为 500,我认为它不会工作,因为限制是 104。但令我惊讶的是,数据库工作正常并且可以处理所有并发连接(104 以上):< /p>

enter image description here

显然,我遗漏了一些东西。

我的实例真的有 max_connections 的限制吗?

如果我更改 max_connection 设置,我的实例的定价会发生变化吗?

另外,我很好奇图形中的水平线代表什么,因为它在我最初的 max_connection 设置级别,而在更改之前,它不存在

谢谢!

1 个答案:

答案 0 :(得分:1)

根据 https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.MaxConnections 上的信息,您应该已经达到了那里的限制。

也就是说,我猜这里发生了两种可能的事情之一:

  • AWS 不强制执行这些限制。我猜他们可能在这里建议了基于实例大小的限制。
  • 允许某种“突发”。与 IOPS 类似,您可以在不影响服务的情况下暂时扩展到一个小的“突发”平衡。