• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

原创:系统性能优化,第一篇 cpu的优化 。

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 21次 | 进入软件测试论坛讨论

领测软件测试网
写了一早晨,我还会写内存,还有硬盘的优化。
希望对大家有用。

如何维护好你的系统,使它发挥到最好的水平。
首先是你的CPU性能如何,那如何知道自己的CPU性能是否已饱和。下面咱门来讨论吧。
如果CPU的运行速度不够快,运行队列上的数目就不能始终不能保持较底的水平,此时就发生了饱和。
那如何知道自己CPU是否已经饱和,这时你就要监控CPU的使用。
而最好的监控方式就是通过sar命令和rtpm来监控。
后面我主要会以sar命令来解释,rtpm其实也是一样的,如果你想对rtpm有更多的了解,可以man rtpm看它的手册页。(很长,我看了一点就不

想在看了。)
要使用sar命令来检查cpu的饱和情况,使用两个参数-u和-q.
使用-u选项所显示的队列报告了cpu的用户进程,系统进程,等待I/O和空闲时间上的百分比。
来举个列子吧:
sar -u 1 15  (注:这个表示一秒监控一次,一共报告15次,我是为了节约时间,大家也可以把监控时间加长。)
# sar -u 1 15

UnixWare uw713 5 7.1.3 i386    03/26/03

11:25:03    %usr   %sys   %wio  %idle  %intr
11:25:04      88      2     10      0      0
11:25:05      57      4     39      0      0
11:25:06       1      4     95      0      0
11:25:07      21      2     77      0      0
11:25:08      79      3     18      0      0
11:25:09      71      7     22      0      0
11:25:10      95      3      2      0      0
11:25:11      94      3      3      0      0
11:25:12      87      6      7      0      0
11:25:13      93      6      1      0      0
11:25:14      84     15      1      0      0
11:25:15       5      0     81     14      0
11:25:16      31      2     35     32      0
11:25:17      30      0     70      0      0
11:25:18       3      7     65     21      4
Average       56      4     35      4      0



如果%idle值小于等于30%,它表示一个系统被困在处理器的能力上。如果有很底的%idle值和很高的%usr,%sys数值,cpu就已经饱和了。

sar -q 1 15
-q的选项指示在运行队列中当前有多少进程正竞争CPU的资源。

# sar -q 1 15

UnixWare uw713 5 7.1.3 i386    03/26/03

11:28:18    prunq %prunocc    runq %runocc    swpq %swpocc
11:28:19                       3.0     100
11:28:20      2.0      100
11:28:21
11:28:22                                       1.0     100
11:28:23
11:28:24
11:28:25
11:28:26      2.0      100                     1.0     100
11:28:27
11:28:28      1.0      100     1.0     100
11:28:29                       1.0     100
11:28:30
11:28:31
11:28:32      1.0      100                     1.0     100
11:28:33                                       3.0     100
Average       1.5       26     1.7      20     1.5      26

cpu的饱和表现在,prunq runq的数值超过2和%prunocc  %runocc数值大于100%。

另外cpu的系统时间不应该超过用户时间的两倍,否则系统就没有有效的利用。
另外多说一句,你可以使用rtpm监控时,一定注意cpu用在等待I/O的时间不应该超过10%,高的I/O等待时间通常表示cpu正在等待磁盘。
好了大家知道如何识别cpu的饱和,现在咱们来讲如何CPU的资源。
1. 增加硬件(感觉这一段自己写了都象废话,不过想想还是写上吧。)
升级一个更快的cpu。
升级到多个cpu。
换一块更快的硬盘或是改变一的硬盘控制器,比如scsi,raid卡一类的。
对了加大内存也是很重要的。(曾经对电信的一台服务器做过一次检查,系统老是不能很好的工作,cpu也很不错,双xoen的,查到最后发现问

题就是它内存的原因,只有1GB,后来内存扩到了3GB后什么问题都没了,所以内存很重要。)
2. 对核心参数的优化
MAXUP   这个核心参数的作用是,在给定的时间,控制一个非超级用户可以运行的用户进程的数目。
        减少这个值可以限制一个用户可以运行的进程的数目。这个值一般在30至500之间,其缺省值是80。

 lsw 回复于:2003-03-26 12:18:24
老大,你用的是713呀!呵呵,知道了。

 kongxyw 回复于:2003-03-26 13:33:40
学学。

 quicksand 回复于:2003-03-26 16:25:35
好哟

 giant 回复于:2003-03-27 16:36:09
努力,支持

 giant 回复于:2003-03-27 16:37:58
努力,支持

 giant 回复于:2003-03-27 16:37:58
努力,支持

 一生不变 回复于:2003-03-27 16:51:45
# sar -u 1 5

SCO_SV sys 3.2v5.0.5 i80386    03/27/2003

16:39:30    %usr    %sys    %wio   %idle (-u)
16:39:31      42      45       1      11
16:39:32      35      42       0      23
16:39:33      26      39       0      35
16:39:34      17      45       0      38
16:39:35       9      45       0      46

Average       26      43       0      31
看看我这个CPU如何???
在刚启动服务器时%sys的值也会是这么多
问题出在哪里了???

 一生不变 回复于:2003-03-27 16:52:46
# sar -u 1 5

SCO_SV sys 3.2v5.0.5 i80386    03/27/2003

16:39:30    %usr    %sys    %wio   %idle (-u)
16:39:31      42      45       1      11
16:39:32      35      42       0      23
16:39:33      26      39       0      35
16:39:34      17      45       0      38
16:39:35       9      45       0      46

Average       26      43       0      31
看看我这个CPU如何???
在刚启动服务器时%sys的值也会是这么多
问题出在哪里了???

 answer 回复于:2003-03-27 17:16:48
你的系统应用比较大,但应该不会影响什么。

 annyzhou 回复于:2003-03-30 10:19:24
08:49:11    %usr    %sys    %wio   %idle
08:49:12       3      34       6      57
08:49:13       2      32       3      63
08:49:14       2      25       0      73
08:49:15       2      26       2      69
08:49:16       5      32       2      61
08:49:17       4      33       2      61
08:49:18       4      31       4      61
08:49:19       2      30       4      64
08:49:20       3      33       2      62
08:49:21       3      31       2      64
08:49:22       4      30       4      62
08:49:23       4      30       2      66
08:49:24       2      32       2      63
08:49:25       2      31       4      62
08:49:26       3      32       6      58

Average        3      31       3      63

08:52:07 runq-sz %runocc swpq-sz %swpocc
08:52:08     1.0     100     1.0     100
08:52:09     1.0     100     1.0     100
08:52:10     1.0     100     1.0     100
08:52:11     1.0     100     1.0     100
08:52:12     1.0     100     1.0     100
08:52:13     1.0     100     1.0     100
08:52:14     1.0     100     1.0     100
08:52:15     1.0     100     1.0     100
08:52:16     1.0     100     1.0     100
08:52:17     1.0     100     1.0     100
08:52:18     1.0     100     1.0     100
08:52:19     1.0     100     1.0     100
08:52:20     1.0     100     1.0     100
08:52:21     1.0     100     1.0     100
08:52:22     1.0     100     1.0     100

Average      1.0     100     1.0     100
以上是我得到得结果,请各位大虾帮忙分析一下!小女子这厢有礼了!

 answer 回复于:2003-03-31 13:09:26
你的系统性能应该很好。

 一生不变 回复于:2003-03-31 13:32:12
无人使用的时候系统资源也被
占了42%左右这样的系统也算正常????
怎么会没有影响呢???

 westering 回复于:2003-03-31 17:54:47
兄弟,你这个肯定有程序在上面跑。
看看有没有死进程。
#ps -eaf

 lannum 回复于:2003-06-29 11:05:57
没装上unix
24

 level 回复于:2004-02-27 18:43:00
呵呵

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网