一、影响 Linux 服务器性能的因素1. 操作系统级>CPU>内存>磁盘 I/O 带宽>网络 I/O 带宽2.程序应用级1、系统性能评估标准影响性能因素评判标准好坏糟糕CPUuser%+sys%<70%user%+sys%=85%user%+sys%>=90%内存SwapIn(si)=0SwapOut(so)=0PerCPUwith10page/sMoreSwapIn&SwapOut磁盘iowait%<20%iowait%=35%iowait%>=50%其中:%user:表示 CPU 处在用户模式下的时间百分比。%sys:表示 CPU 处在系统模式下的时间百分比。%iowait:表示 CPU 等待输入输出完成时间的百分比。swapin:即 si,表示虚拟内存的页导入,即从 SWAPDISK 交换到 RAMswapout:即 so,表示虚拟内存的页导出,即从 RAM 交换到 SWAPDISK。1. 常用系统命令Vmstat、sar、iostat、netstat、free、ps、top 等2. 常用组合方式用 vmstat、sar、iostat 检测是否是 CPU 瓶颈用 free、vmstat 检测是否是内存瓶颈用 iostat 检测是否是磁盘 I/O 瓶颈用 netstat 检测是否是网络带宽瓶颈cussyidwast四、Linux 性能评估与优化1. 系统整体性能评估(uptime 命令)[root@web1~]#uptime16:38:00up118days,3:01,5users,loadaverage:1.22,1.02,0.91这里需要注意的是:loadaverage 这个输出值,这三个值的大小一般不能大于系统 CPU 的个数,例如,本输出中系统有 8 个 CPU,如果 loadaverage 的三个值长期大于 8 时,说明 CPU 很繁忙,负载很高,可能会影响系统性能,但是偶尔大于 8 时,倒不用担心,一般不会影响系统性能。相反,如果 loadaverage 的输出值小于CPU 的个数,则表示 CPU 还有空闲的时间片,比如本例中的输出,CPU 是非常空闲的。2. CPU 性能评估(1)利用 vmstat 命令监控系统 CPU该命令可以显示关于系统各种资源之间相关性能的简要信息,这里我们主要用它来看CPU 一个负载情况。下面是 vmstat 命令在某个系统的输出结果:[root@node1~]#vmstat23procsmemory——swap--io--system--cpurbswpdfreebuffcachesisobiboin000162240830467032001321100723019800000162240830467032001010102001100000001622408304670320011100918019900•Procsr 列表示运行和等待 cpu 时间片的进程数,这个值如果长期大于系统 CPU 的个数,说明 CPU 不足,需要增加 CPU。b 列表示在等待资源的进程数,比如正在等待 I/O、或者内存交换等。•Cpuus 列显示了用户进程消耗的 CPU 时间百分比。US 的值比较高时,说明用户进程消耗的 cpu ...