Solaris系统性能问题
文章转自,标题为寻求对solaris系统性能问题感兴趣的朋友(下面的文章是抛砖引玉,希望大家多指教)
不过好笑的是,砖是抛出来了,玉却是没有引过来。
只有多多学习先,才能去抛玉给别人。
日常运行中服务器性能不好,究其原因是一件很复杂的事情,一种情况可能是目前的服务器配置不能满足业务增长的需要;另一种情况可能是应用软件结构的不合理,数据文件和数据库存放的不合理,网络结构不合理。 系统管理员的主要任务是使用各种工具和命令诊断出问题所在,明确出什么应用程序在大量消耗系统资源(CPU、内存、磁盘IO、网络带宽等),然后应用开发人员去优化应用程序降低对系统资源的占用率来提高响应速度。 性能调优主要关注的是系统资源的利用,系统资源分为物理的和逻辑的,物理的如:CPU、内存、输入输出设备(包括磁盘设备、IO总线、通讯线和各种控制卡等),逻辑的资源如:LVM(逻辑卷管理器)、VMM(虚存管理器)、文件系统、Page space (缓存)和队列等。这些资源对系统性能的影响轻重缓急不同,合理利用这些资源有许多途径,如果条件允许可首先通过优化程序代码和数据结构降低对资源的要求;尽量使用合理的资源;以及合理控制分配资源。另外,可以通过扩充新的硬件设备来提升处理速度。
注:系统资源为CPU,内存,磁盘IO,网络带宽
“明确什么应用程序在大量的消耗系统资源”的观点非常的好,应该再加上是否需要这么多的资源。
系统在不同时间内的平均负荷(Last mimute、Last 5 minutes、Last 15 minutes)是用来评估系统是否超负荷运行较方便、较常用的一种方法。 系统性能分析的标准工具: CPU : vmstat sar ps 内存: vmstat ps 磁盘: iostat vmstat 网络: netstat nfsstat
注:所用工具罗列在此。
性能调优一般步骤 注:此处应该为一般标准 性能调优的主要目的是使系统能够有效的利用各种资源,但衡量系统资源利用率好坏的标准是什么,针对不同的系统和应用没有严格的定义,一般参照以下条件来判定主要资源使用状况: 好 坏 糟糕 CPU user% + sys%< 70% user% + sys%= 85% user% + sys% >=90%磁盘 iowait % < 30% iowait % =40% iowait % >= 50%内存 No Page In & Page Out Per CPU with 10 page/s More Page In & Page Out网络 < 30% Bandwidth运行队列(Run Queue) < 2 x CPU Count