Neo*_*Neo 2 postgresql python django amazon-web-services
我们使用实例类型为 db.m4.2xlarge 的 rds(postgres)。
通常大多数时候连接数是8-10。但在某些情况下随着连接数增加到100-200。DB 变得无响应。在数量或读取连接突然激增的情况下,我们多次看到数据库无响应(因此即使连接从 10 增加到 100)。
正在执行的查询最多需要 2 秒才能执行。
我的应用程序服务器在 django/python 堆栈上运行(使用 Gunicorn)。当数据库服务器响应时间增加时,这些服务器的延迟会变高。
为了提高性能,我们应该对 postgres rds 的配置进行任何更改(目前大多数设置都是默认的)?
小智 5
我也有同样的问题。postgresql 设置在 AWS RDS 上,即使在增加实例后,CPU 利用率仍为 100%。我使用此处显示的方法进行了调试,其中一种方法对我有用。
我检查了运行时间最长的查询,发现某些查询被卡住并且运行了超过 3-4 小时。要检查查询运行了多长时间,请运行以下命令:
SELECT max(now() - xact_start) FROM pg_stat_activity
WHERE state IN ('idle in transaction', 'active');
Run Code Online (Sandbox Code Playgroud)
如果超过一个小时,那就是问题所在。终止长时间运行的连接并限制应用程序端连接的最大寿命。
归档时间: |
|
查看次数: |
5084 次 |
最近记录: |