order by数据过多引起的cpu飙升
测试环境
1.目前数据库类型为pg数据库 |
2.目前数据库业务为共享数据库,为减少其他业务对本次测试的影响,故选在业务空闲时间执行 |
3.服务器性能为8C 32GB 500GB硬盘 |
原程序测试结果
优化后程序结果
出现原因
当数据量大时,order by排序操作会消耗大量的CPU资源,从而导致CPU占用率高
解决方法
1.从业务层减少对order by的依赖
2.对order by字段增加索引
1.目前数据库类型为pg数据库 |
2.目前数据库业务为共享数据库,为减少其他业务对本次测试的影响,故选在业务空闲时间执行 |
3.服务器性能为8C 32GB 500GB硬盘 |
当数据量大时,order by排序操作会消耗大量的CPU资源,从而导致CPU占用率高
1.从业务层减少对order by的依赖
2.对order by字段增加索引