免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3938 | 回复: 4
打印 上一主题 下一主题

超级经典问题,Linux AS3 + Oracle9i 系统CPU、MEM占用超高,吐血望解决之道! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-01-24 00:03 |只看该作者 |倒序浏览
该问题现在初步认为几种原因:
1是程序问题
2是Oracle性能问题
3是程序攻击原因,但都还没确认是什么原因,程序正在进行优化。Oracle之前并没有什么压力的,是上周三更新了一个我们程序版本后出现这个问题的。这个问题己持续4天了,每天晚上22到到2点钟左右问题非常严重。Oracle系统CPU、MEM完全耗尽。TOP、PS、netstat 情况如下:
top观查:
23:42:00  up 23:56,  5 users,  load average: 20.70, 19.49, 22.27
100 processes: 83 sleeping, 17 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total   83.9%    0.0%   15.8%   0.0%     0.1%    0.0%    0.0%
           cpu00   83.4%    0.0%   16.3%   0.0%     0.1%    0.0%    0.0%
           cpu01   85.0%    0.0%   14.7%   0.0%     0.1%    0.0%    0.0%
           cpu02   83.8%    0.0%   15.9%   0.0%     0.0%    0.1%    0.0%
           cpu03   83.4%    0.0%   16.3%   0.0%     0.1%    0.0%    0.0%
Mem:  4114248k av, 3585228k used,  529020k free,       0k shrd,  169840k buff
                    879116k actv, 1754188k in_d,   30532k in_c
Swap: 4192924k av,       0k used, 4192924k free                 2810340k cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
13443 oracle    19   0  150M 118M  117M R    11.2  2.9   5:08   1 oracle
13578 oracle    17   0  122M  90M 91656 S    10.9  2.2   1:20   1 oracle
13582 oracle    17   0  136M 104M  103M S    10.9  2.6   1:14   1 oracle
13618 oracle    19   0 98.5M  66M 67360 R     7.5  1.6   0:42   2 oracle
13626 oracle    19   0 97824  63M 64352 R     7.3  1.5   0:28   2 oracle
13422 oracle    17   0  151M 119M  118M S     7.1  2.9   5:50   1 oracle
13445 oracle    17   0  154M 122M  121M R     6.7  3.0   6:29   1 oracle
13624 oracle    16   0 99.1M  67M 68064 S     6.4  1.6   0:31   1 oracle

PS观查:
[oracle@mysql oracle]$ ps -aux | more
USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
...............................................................................................
..............................................................................................
...............................................................................................
..............................................................................................
oracle   13236  0.0  0.0  6792 2144 ?        S    22:52   0:00 sshd: oracle@pts/4
oracle   13237  0.0  0.0  5352 1392 pts/4    S    22:52   0:00 -bash
oracle   13356 15.9  3.0 330732 123668 ?     S    23:03   6:50 oracleeasou (LOCAL=NO)
oracle   13404 18.0  3.0 330708 125360 ?     S    23:03   7:42 oracleeasou (LOCAL=NO)
oracle   13420 17.8  3.0 330728 125004 ?     S    23:03   7:38 oracleeasou (LOCAL=NO)
oracle   13422 15.3  3.0 330732 123452 ?     S    23:03   6:33 oracleeasou (LOCAL=NO)
oracle   13434 15.8  3.0 330720 124332 ?     S    23:03   6:45 oracleeasou (LOCAL=NO)
oracle   13439 16.0  3.0 330720 124408 ?     S    23:04   6:49 oracleeasou (LOCAL=NO)
oracle   13443 13.9  2.9 330744 122916 ?     S    23:04   5:55 oracleeasou (LOCAL=NO)
oracle   13445 17.1  3.0 330728 125468 ?     R    23:04   7:17 oracleeasou (LOCAL=NO)
oracle   13465 13.1  3.0 330756 125972 ?     S    23:07   5:05 oracleeasou (LOCAL=NO)
oracle   13475 12.6  2.9 330712 121476 ?     R    23:09   4:43 oracleeasou (LOCAL=NO)
oracle   13533 11.5  2.6 330732 109676 ?     S    23:24   2:34 oracleeasou (LOCAL=NO)
oracle   13539 11.3  2.6 330736 107512 ?     S    23:24   2:28 oracleeasou (LOCAL=NO)
root     13568  0.2  0.0  5196 1212 pts/3    S    23:29   0:02 top
oracle   13578 13.7  2.5 330696 106032 ?     S    23:30   2:14 oracleeasou (LOCAL=NO)
oracle   13582 12.2  2.7 330760 113576 ?     S    23:30   1:54 oracleeasou (LOCAL=NO)
oracle   13600  9.5  1.9 330724 82004 ?      S    23:34   1:11 oracleeasou (LOCAL=NO)
oracle   13602 11.4  2.3 330724 98216 ?      S    23:34   1:25 oracleeasou (LOCAL=NO)
oracle   13614 14.0  2.3 330728 95748 ?      S    23:35   1:31 oracleeasou (LOCAL=NO)
oracle   13616 14.0  2.2 330716 90912 ?      S    23:35   1:29 oracleeasou (LOCAL=NO)
oracle   13618 11.3  2.0 330720 82884 ?      R    23:36   1:11 oracleeasou (LOCAL=NO)
oracle   13620 12.2  2.3 330764 98140 ?      S    23:36   1:16 oracleeasou (LOCAL=NO)
oracle   13622 16.8  2.3 330716 96708 ?      S    23:36   1:39 oracleeasou (LOCAL=NO)
oracle   13624 13.7  2.2 330752 91828 ?      S    23:37   1:15 oracleeasou (LOCAL=NO)
oracle   13626 10.8  2.1 330712 87652 ?      R    23:37   0:58 oracleeasou (LOCAL=NO)
oracle   13632 12.2  2.0 330704 84352 ?      S    23:37   1:05 oracleeasou (LOCAL=NO)
oracle   13644  1.7  0.9 330716 40616 ?      S    23:41   0:04 oracleeasou (LOCAL=NO)
oracle   13646  1.4  0.9 330576 38868 ?      R    23:42   0:03 oracleeasou (LOCAL=NO)
oracle   13650  0.6  0.8 330584 34140 ?      R    23:43   0:01 oracleeasou (LOCAL=NO)
oracle   13658  0.7  0.5 330580 21056 ?      R    23:45   0:00 oracleeasou (LOCAL=NO)
oracle   13660  0.7  0.5 330584 20656 ?      R    23:46   0:00 oracleeasou (LOCAL=NO)
oracle   13662  1.3  0.5 330584 21388 ?      R    23:46   0:00 oracleeasou (LOCAL=NO)
oracle   13664  0.8  0.3 330576 15320 ?      R    23:46   0:00 oracleeasou (LOCAL=NO)

netstat 观查:
[oracle@mysql oracle]$ netstat -atuln | grep 1521 | more
tcp        0      0 0.0.0.0:1521            0.0.0.0:*               LISTEN      
tcp        0      0 127.0.0.1:1521          127.0.0.1:32781         ESTABLISHED
tcp        0      0 127.0.0.1:32781         127.0.0.1:1521          ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38431      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35853      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38402      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38403      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38404      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35646      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35647      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35639      ESTABLISHED
tcp     1423      0 192.168.1.16:1521       192.168.1.15:38432      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35622      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38232      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:37465      ESTABLISHED
tcp       17      0 192.168.1.16:1521       192.168.1.15:37212      ESTABLISHED
tcp        0    133 192.168.1.16:1521       192.168.1.15:37725      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:37458      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:38230      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:41292      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35656      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35657      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35652      ESTABLISHED
tcp        0      0 192.168.1.16:1521       192.168.1.15:35653      ESTABLISHED

这样的连接有30多个,这个数由java连接池决定。连接池越大,连接超多。
JAVA应用程序在另一台机一起来,马上(半分钟之内)这些进程产生。
请各位发表自己的看法和解决办法,谢谢!

[ 本帖最后由 barry_zhu 于 2006-1-24 00:24 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-01-24 10:07 |只看该作者
原帖由 barry_zhu 于 2006-1-24 00:03 发表
该问题现在初步认为几种原因:
1是程序问题
2是Oracle性能问题
3是程序攻击原因,但都还没确认是什么原因,程序正在进行优化。Oracle之前并没有什么压力的,是上周三更新了一个我们程序版本后出现这个问题的。 ...

还是找研发吧,应该是程序bug引起的

这样的问题我也遇到过,和系统,数据库没有关系

论坛徽章:
0
3 [报告]
发表于 2006-01-24 19:50 |只看该作者
因为数据库和操作系统都没有做过什么改动
原因很可能出在应用程序上
除非应用程序做的修改触发了数据库和操作系统的bug

论坛徽章:
0
4 [报告]
发表于 2006-01-25 15:38 |只看该作者
可以通过sid 查一下session id , 然后看看这些占用系统资源大的语句都在干什么, 最好是和开发在一起, 让他们看看语句。

论坛徽章:
0
5 [报告]
发表于 2006-01-25 17:27 |只看该作者
做个statspack吧……
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP