非零 vmstat "si/so" 值的解释

kno*_*orv 4 linux memory vmstat

在解释非零 vmstat“si/so”值方面有哪些有用的经验法则?什么时候这些值“正常”,什么时候它们表明内存情况有问题?

在一般情况下,这个问题当然很难回答,但我正在寻找经验法则而不是确切的规则。

cag*_*nut 6

我的经验法则是“任何超过零的东西都是坏的”。问题变成“有多糟糕?”。对于网络服务器和数据库服务器来说,这是非常糟糕的,因为磁盘之旅可能足以对溢出的任何事务产生非常大的性能影响。事实上,它通常会导致滚雪球效应,直到内核 oom-kill 出现。

对于文件服务器或执行异步/批处理工作负载的东西,只要它不是经常发生,你就可以接受它。

请记住 vmstat 的第一行输出是平均值。只有当您通过它几秒钟进行更新时,您才开始查看现在是否正在发生交换。

如果您设置了 sysstat,“sar -B”将显示历史趋势。