Amazon RDS(postgres)连接限制?
Posted
技术标签:
【中文标题】Amazon RDS(postgres)连接限制?【英文标题】:Amazon RDS (postgres) connection limit? 【发布时间】:2013-12-05 01:42:21 【问题描述】:我搜索了网络并浏览了 RDS 文档,但似乎找不到打开的连接限制。
对于它的价值,我计划使用新的 Postgres 风格的 RDS,但我认为来自 mysql 方面的答案也是可以接受的。
谢谢!
【问题讨论】:
【参考方案1】:回答可能为时已晚,但您可以在此处找到 Amazon Aurora RDS Postgresql 连接限制:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Managing.html#AuroraPostgreSQL.Managing.MaxConnections
【讨论】:
RDS Postgres 与 Aurora Postgres 不同。【参考方案2】:您可以更改 max_connections。复制默认参数。然后更改值并保存并将实例组设置为新的选项组,最后重启您的实例使设置生效。
【讨论】:
【参考方案3】:Afaik 上面返回的“max_connections”实际上是 ParameterGroup 中设置的 max_connections 的当前值。我想知道如何动态计算 AWS 中给定 Postgres 实例的最大 可能 连接,但由于某种原因,我什至无法从 AWS 中找到信息表。但是,我注意到 AWS 控制台 RDS 部分向您显示了当前连接与可能连接总数的进度条:
在谷歌浏览器工具中检查这个,我确定蓝色部分是 4 像素宽,而进度条的总宽度是 50 像素,这意味着我当前的 121 个连接大约占总数的 8%,这给出了我的 db.r3.large 实例在 1512 处的最大可能连接数的近似值。
【讨论】:
但是那个红条是从哪里来的呢?怎么查!【参考方案4】:只需show max_connections;
您可以在 RDS 控制台的 Parameter Groups 上修改此值。默认 postgres9.3 参数组中max_connections
的值为DBInstanceClassMemory/12582880
。在 9.4 版本中,默认值为DBInstanceClassMemory/31457280
。
【讨论】:
其实默认参数组是不能修改的,所以要新建一个参数组,是吗? 对了,需要新建一个Parameter Group,默认Parameter Group的family。感谢您的提示! 请注意,此默认设置可能因 postgres 版本而异 - 在 9.4 中,默认值是DBInstanceClassMemory/31457280
,小于之前默认连接数的一半。
使用 1GB 内存我应该获得 34 个连接?我的show max_connections;
给了我 26。(1024*1024*1024)/31457280 = 34 为什么亚马逊将这个值设置为这个比率?
参数组documentation here【参考方案5】:
如果您设置 PostgreSQL RDS 实例,您可以查询 max_connections:
select * from pg_settings where name='max_connections';
max_connections 设置为 5696。
【讨论】:
请注意,max_connections 默认情况下是在您的实例内存中参数化的,因此您的数字可能与 5696 大不相同。 哇...太棒了,没想到我可以这样查询...这将使我的应用程序更加高效。 db.t2.small (2GiB Ram) 有 198 个连接 db.t2.medium (4GiB Ram) 有 413 个连接。默认参数组中的公式是:max_connections = LEAST(DBInstanceClassMemory/9531392,5000),但我还没有正确地将任何东西插入到匹配的计算器中。show max_connections;
查询也做同样的事情以上是关于Amazon RDS(postgres)连接限制?的主要内容,如果未能解决你的问题,请参考以下文章
如何将数据从 Postgres 移动到在 Amazon 的 RDS 上运行的 MySQL?
postgres_fdw 无法连接到 Amazon RDS 上的服务器
Amazon RDS-Postgres未将索引用于SELECT查询
使用 sequelize ORM 连接到 node.js 上的 Amazon RDS Postgres 数据库的问题