数据库运行资源主要有三部分:IO、CPU和network。IO是指把数据从磁盘读到内存的过程;CPU主要是指处理内存中数据的过程,有时也包括等待IO的时间;network指数据在网络中传输的过程。
首先我们来搞清楚它们之间的关系。如果系统的瓶颈在IO,即需要从磁盘读取很多数据,那么CPU和network就比较空闲;如果系统的瓶颈在CPU,即有大量的数据在内存中需要被反复处理,那么IO和network就比较空闲;如果系统的瓶颈在network,即有大量的数据需要在客户端和服务器间传输,那么IO和CPU就比较空闲。
这三种性能瓶颈是此消彼长的关系。在做性能测试的时候,有时候CPU始终压不上去,原因是CPU不是系统的瓶颈,很可能IO是瓶颈。
实际应用中,网络的开销是比较小的,因为大部分的运算是在数据库完成的,所以需要重点关注IO和CPU。
如何降低IO和CPU呢?
降低IO就是减少读取的磁盘数据块,降低CPU就是减少读取的内存数据块,所以读取的数据块越少,消耗的资源也就越少,性能越好。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3171358/ ,如需转载,请注明出处,否则将追究法律责任。