在 Linux 操作系统中,平均负载取决于多种因素,例如 CPU 利用率、不间断睡眠进程数等。另一方面,Solaris 操作系统的平均负载取决于可运行进程数和正在运行进程数。
我在 Solaris 裸机上遇到过大约 250(1 分钟)、230(5 分钟)、219(15 分钟)的高负载,其资源如下:
vCPU:256 RAM:512GB 磁盘:SAN
在这种高负载下,我发现 CPU 空闲时间(87% 空闲)和可用 RAM 大约 >100GB。这完全表明这两个资源没有任何瓶颈。由于备份过程在系统上运行,并且我的 SAN 文件系统上将发生大量读取请求,但响应时间约为 0.25-0.35ms,这要少得多或很好。从 iostat 实用程序中,我发现这些文件系统大约有 40-50% 的繁忙度。从 vmstat 来看,几秒钟后,大约有 40-120 个可运行进程,这意味着它们进入运行队列,但下一秒的值是 0。从图表和统计数据可以看出,读取请求导致了此问题。
问题:
- 这些可运行进程是否会导致如此高的平均负载?如果是,那么如何
- 如果 SAN 的读取请求响应时间非常好,并且文件系统繁忙值是 50% 而不是 100%,那么为什么会造成负载?这怎么能联系起来呢。
注意:如果与此场景有关的任何问题,请告诉我。