
Подробности сервера:
Ядро:Linux wiq31 2.4.21-9.ELsmp #1 SMP Чт Янв 8 17:08:56 EST 2004 i686 i686 i386 GNU/Linux
ПРОЦЕССОР:4 процессора Intel(R) Xeon(TM) 3,06 ГГц
Объем памяти:1028520 кБ
Версия JBoss:3.2.7
Каждый раз, когда я пытаюсь запустить JBoss, на всех процессорах значения iowait начинают расти, а значения idle — падать.
Перед выполнением моего приложения JBoss,бесплатнокоманда возвращает следующий вывод:
*total used free shared buffers cached
Mem: 1028520 966400 62120 0 187756 538928
-/+ buffers/cache: 239716 788804
Swap: 2044072 790672 1253400*
После запуска моего приложения JBoss,бесплатнокоманда возвращает следующий вывод:
*total used free shared buffers cached
Mem: 1028520 1007648 20872 0 187116 524084
-/+ buffers/cache: 296448 732072
Swap: 2044072 819096 1224976*
После запуска моего приложения JBoss, не отвечающего ни на один запрос, файл процесса Java /proc/PID/status имеет следующие значения:
State: S (sleeping)
SleepAVG: 27%
Tgid: 24022
Pid: 24022
PPid: 21011
TracerPid: 0
Uid: 500 500 500 500
Gid: 500 500 500 500
FDSize: 256
Groups: 500
VmSize: 775200 kB
VmLck: 0 kB
VmRSS: 156752 kB
VmData: 696752 kB
VmStk: 36 kB
VmExe: 21 kB
VmLib: 710375 kB
StaBrk: 0804f000 kB
Brk: 095bb000 kB
StaStk: bffff8c0 kB
ExecLim: ffffffff
Threads: 62
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000000
SigCgt: 1000000180015ccf
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
Вызвано ли это поведение подкачкой памяти или небольшого объема памяти, доступной на сервере, достаточно для запуска моего приложения?
решение1
Jboss сам по себе займет довольно значительный объем памяти, даже если на нем ничего не запущено.
Чтобы проверить, интенсивно ли ваша система использует подкачку, вы всегда можете запустить
vmstat 1
и посмотрите на вывод. Под "swap" вы увидите "si" и "so" — это будут страницы, которые будут заменены.
Навскидку я бы предложил больше оперативной памяти, но вам действительно следует сначала провести расследование. Например, если у вас развернуто много больших объектов, вам может потребоваться просто подождать некоторое время, пока jboss перетащит эти объекты с диска.