我正在研究PostgreSQL支持的应用程序.
在具有4GB RAM的现代Xeon上,CPU使用率不断超过50%.在50%的CPU利用率中,67%是"用户",33%是"系统"(这是Linux机器.)系统根本不在等待I/O.
我想知道如何看待这个CPU时间如何崩溃.
我可以看到,查询主要是临时SQL(没有准备好的语句).
您是否认为通过转移到准备好的语句可以显着减少用户CPU时间?即,SQL解析时间,查询计划时间等是否会占用这么多CPU?一些查询非常粗糙(500-1000个字符加上.)
任何人都可以确认PostgreSQL是否自动规范化ad-hoc查询并为它们缓存查询计划,实际上使它们像准备语句一样高效(加上SQL解析时间)?
我可能会实现一些更高级别的缓存来解决这个问题,但我很想知道是否有人认为将这个应用程序移动到准备好的语句是值得的.
| 归档时间: |
|
| 查看次数: |
5365 次 |
| 最近记录: |