db2sysc消耗大量内存 [英] db2sysc consumes huge memory

查看:371
本文介绍了db2sysc消耗大量内存的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

专家,

我在Solaris 9上安装了DB2 v8.2服务器。当我使用控制中心或其他应用程序(命令行除外)连接到DB2

时,弹出大约12个db2sysc进程的
,每个进程消耗超过2G

内存(总共30G内存)。服务器只有8G物理内存,所以
DB2需要太多的内存资源。我试图减少

appgroup_mem_sz和app_ctl_heap_sz,但它没有用。还有什么可以

我这样做?


请帮忙!

Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(except command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz, but it didn''t work. What else can
I do?

Please help!

推荐答案

Tony写道:
Tony wrote:

嗨专家,

我在Solaris 9上安装了DB2 v8.2服务器。当我使用控制中心或其他应用程序(命令行除外)连接到DB2

时,弹出大约12个db2sysc进程的
,每个进程消耗超过2G

内存(总共30G内存)。服务器只有8G物理内存,所以
DB2需要太多的内存资源。我试图减少

appgroup_mem_sz和app_ctl_heap_sz,但它没有用。还有什么可以

我这样做?


请帮忙!
Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(except command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz, but it didn''t work. What else can
I do?

Please help!



请确保他们真的在咀嚼这种类型的记忆。如果

你正在使用top并且看到每个进程都在使用2G内存,那么实际上可以在进程之间共享的大部分内存。其中大部分可能是
虚拟内存(已分配但尚未实际使用)。


您的交换是否真正用于22 + G的磁盘空间?如果这是真的,

您的系统可能会停止尝试分配

磁盘空间,将每个db2sysc进程交换进出物理RAM。


我的猜测是你正在查看top'的输出并读取它的内存

状态,就像每个进程完全独立一样。由于fork(2)的性质

,它们不是。每个进程在

写时复制内存页面上共享大量内存,另外还有实际的共享(读写)内存

(使用类似的东西) shmget的(2))。所以数字顶部显示

可能会产生误导。然而,我无法想象他们能做出什么样的方式

它准确而明显(不会误导那些不知道unix

内部人员)。

Please be sure that they really are chewing up that type of memory. If
you''re using top and see that each process is using 2G of memory, much of
that may actually be shared between the processes. Much of it may be
virtual memory (allocated, but not actually used yet).

Is your swap really being used for 22+G of disk space? If that were true,
your system would probably grind to a halt trying to allocate the
diskspace, swapping each db2sysc process in and out of physical RAM.

My guess is that you''re looking at top''s output and reading its memory
status as if each process were completely independant. Due to the nature
of fork(2), they aren''t. Each process shares lots of memory in
copy-on-write memory pages, plus there is actual shared (read-write) memory
on top of that (using something like shmget(2)). So the numbers top shows
can be quite misleading. And yet, I couldn''t imagine a way they could make
it accurate and obvious (not misleading to those who don''t know unix
internals).


2月15日晚上10点24分,Darin McBride

< dmcbr ... @ tower.to.org.no.spam。 for.mewrote:
On Feb 15, 10:24 pm, Darin McBride
<dmcbr...@tower.to.org.no.spam.for.mewrote:

Tony写道:
Tony wrote:

嗨专家,
Hi expert,


我在Solaris 9上安装了DB2 v8.2服务器。当我使用控制中心或其他应用程序(命令行除外)连接到DB2

时,弹出大约12个db2sysc进程的
,每个进程消耗超过2G

内存(总共30G内存)。服务器只有8G物理内存,所以
DB2需要太多的内存资源。我试图减少

appgroup_mem_sz和app_ctl_heap_sz,但它没有用。还有什么可以

我呢?
I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(except command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz, but it didn''t work. What else can
I do?


请帮忙!
Please help!



请确保他们真的在咀嚼这种类型的内存。如果

你正在使用top并且看到每个进程都在使用2G内存,那么实际上可以在进程之间共享的大部分内存。其中大部分可能是
虚拟内存(已分配但尚未实际使用)。


您的交换是否真正用于22 + G的磁盘空间?如果这是真的,

您的系统可能会停止尝试分配

磁盘空间,将每个db2sysc进程交换进出物理RAM。


我的猜测是你正在查看top'的输出并读取它的内存

状态,就像每个进程完全独立一样。由于fork(2)的性质

,它们不是。每个进程在

写时复制内存页面上共享大量内存,另外还有实际的共享(读写)内存

(使用类似的东西) shmget的(2))。所以数字顶部显示

可能会产生误导。然而,我无法想象他们可以做出的方式

准确而明显(不会误导那些不知道unix

内部人员)。


Please be sure that they really are chewing up that type of memory. If
you''re using top and see that each process is using 2G of memory, much of
that may actually be shared between the processes. Much of it may be
virtual memory (allocated, but not actually used yet).

Is your swap really being used for 22+G of disk space? If that were true,
your system would probably grind to a halt trying to allocate the
diskspace, swapping each db2sysc process in and out of physical RAM.

My guess is that you''re looking at top''s output and reading its memory
status as if each process were completely independant. Due to the nature
of fork(2), they aren''t. Each process shares lots of memory in
copy-on-write memory pages, plus there is actual shared (read-write) memory
on top of that (using something like shmget(2)). So the numbers top shows
can be quite misleading. And yet, I couldn''t imagine a way they could make
it accurate and obvious (not misleading to those who don''t know unix
internals).



在Solaris上,我正在使用prstat -a -s rss。检查进程的内存

消耗(不是AIX" top")。你有什么好的想法可以检查

实际内存消耗吗?


非常感谢。

On Solaris, I''m using "prstat -a -s rss" to check the process''s memory
consumption(not AIX "top"). Do you have any other good ideas to check
real memory consumption?

Thanks a lot.


2月15日晚上8:15,Tony < tonyedr ... @ gmail.comwrote:
On Feb 15, 8:15 pm, "Tony" <tonyedr...@gmail.comwrote:

嗨专家,


我安装了DB2 v8.2服务器Solaris 9盒子。当我使用控制中心或其他应用程序(命令行除外)连接到DB2

时,弹出大约12个db2sysc进程的
,每个进程消耗超过2G

内存(总共30G内存)。服务器只有8G物理内存,所以
DB2需要太多的内存资源。我试图减少

appgroup_mem_sz和app_ctl_heap_sz,但它没有用。还有什么可以

我这样做?


请帮忙!
Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(except command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz, but it didn''t work. What else can
I do?

Please help!



你使用什么修补包?请键入db2level命令。


除非存在严重错误(最有可能在fixpack中解决

已经可用),否则您可能会错误地认为

正在使用的记忆。

What fixpack are you using? Please type db2level command.

Unless there is a serious bug (most likely resolved in a fixpack
already available) you are probably mistaken about the amount of
memory actaully being used.


这篇关于db2sysc消耗大量内存的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆