标签
PostgreSQL , 资源 , 性能 , 抖动 , 评估 , 稳定性
背景
在数据库压测过程中,经常会遇到抖动的问题。为什么数据库会出现抖动呢?
持续高水位压测(把资源用个精光)会抖,数据库后台进程要做检查点,垃圾回收,刷脏,操作系统也有回收脏页的操作。
由于压测时把所有资源都用光了,当后台需要进行刷脏,做检查点,垃圾回收等动作时,就会出现资源抢占,当然会导致性能的抖动。
如何看待抖动
关于数据库负载,长时间高水位运转带来的抖动问题,实际上就是资源用太多的问题。
为了评估一个比较合理的硬件资源,应该考虑高峰期业务持续时间,预留一定的资源配比。
留给谁用呢?
freeze, 备份,standby,系统进程(后台进程要做检查点,垃圾回收,刷脏,操作系统也有回收脏页)。
短暂的高水位运转可以接受的,如果业务持续高水位运作,就需要考虑加资源或者拆分了。