主要是想排查是哪个 api 或者哪几个 api, 在哪种情况下导致 连接过多. 没有思路, 请大佬指点一下.
1
liuzhaowei55 2020-11-10 08:27:17 +08:00 via Android
看看 pgsql 连接数设置,然后是程序连接池大小是否合理,然后是查看慢查询还有锁表操作,最后看看程序是否已经到了理论瓶颈
|
2
kyrre 2020-11-10 08:30:33 +08:00
先看看 Pg 里的 slow query log,然后把最慢的那些 sql 跳出来 分析执行计划,看看是不是用上了索引
|
3
encro 2020-11-10 09:22:19 +08:00 1
https://c4ys.com/archives/2349
Mysql 必知必会 -- 思想上基本也适用于 postgres 二楼已经讲了最重要的,我完善补充下: 1,开启慢日志,记录运行慢的语句,并用工具分析; 2, EXPLAIN 分析慢查询 3,`select * from pg_stat_activity`查看当前运行的进程 ; 4, nginx 开启 access 记录 cgi 执行时间; 5, 针对慢页面开启 参考: * Django 数据库连接优化 https://docs.djangoproject.com/zh-hans/3.1/topics/db/optimization/ * Basic Performance Optimization in Django https://medium.com/@ryleysill93/basic-performance-optimization-in-django-ebd19089a33f * PostgreSQL Performance Tips https://www.postgresql.org/docs/current/performance-tips.html |
4
flyingfz 2020-11-10 09:26:11 +08:00
你需要 pg-bouncer
|