Назад | Перейти на главную страницу

Использование подкачки AIX показывает ~ 20%, даже близко к максимальной нагрузке

Я получил предупреждение о том, что использование свопа достигло 80%, что подтвердилось, когда я проверил topas.

Я обнаружил следующие проблемы:

1) Заглядывать в vmstat 5 10, Я нашел много ИП с 0 Эсеры. Как такое вообще возможно?

kthr    memory              page              faults              cpu
----- ----------- ------------------------ ------------ -----------------------
r   b   avm    fre    re  pi  po  fr   sr  cy  in   sy    cs    us sy id wa    pc    ec
12  1 12245252 92621   0 229   0   0    0   0 1884 56260  24568 84 15  0  0  2.50  99.9
12  1 12245413 90313   0 190   0   0    0   0 1764 51759  23827 86 14  0  0  2.50  99.9
12  1 12245193 88040   0 218   0   0    0   0 1734 69307  25347 85 15  0  0  2.50  99.9
14  1 12246377 83810   0 157   0   0    0   0 1960 80471  24057 84 16  0  0  2.50 100.0
13  1 12246050 79785   0 183   0   0    0   0 2280 103138 21990 81 19  0  0  2.50 100.0
12  1 12245988 77393   0 173   0   0    0   0 1881 51984  22331 84 16  0  0  2.50 100.0
14  1 12246180 74721   0 179   0   0    0   0 1792 52624  20610 79 21  0  0  2.50  99.9
15  1 12246131 72304   0 176   0   0    0   0 2109 58504  23344 82 18  0  0  2.50  99.9
15  1 12246673 68231   0 187   0   0    0   0 2272 73068  25319 85 15  0  0  2.50  99.9
13  1 12246305 66342   0 172   0   0    0   0 1966 104313 21884 83 17  0  0  2.50 100.0

2) Я пошел искать, кто поглощает мою драгоценную память, и обнаружил, что на самом деле очень мало знаю, как это вычислить в AIX.

Нашел эту команду где-то, что казалось разумным, читая руководство:

 ps -ealf | head -1 ; ps -ealf | sort -rn +9 | head

что показалось разумным, если взглянуть в руководство и дать примерно такой результат:

F      S   UID       PID   PPID   C PRI NI ADDR        SZ    STIME     TTY   TIME CMD
242001 A  util   1581080      1  76  60 20 fb34510 150044 10:55:40   pts/0 103:43 /usr...
242001 A  util    569540      1   0  60 20 d235510 142580 11:01:09   pts/0  68:55 /usr/...
242001 A  util   1425464      1   4  60 20 43c6510 129916 23:17:58       - 168:02 /usr...
202001 A  util    245864      1  83  60 24 da9e510 113008 13:37:22   pts/2  43:26 /usr/...
242001 A  util   1163370      1   0  68 24 d69d510 103572 09:55:52  pts/13  17:24 /usr/...
242001 A  util    466984      1   0  60 20 5d0c510 83064  11:00:34   pts/0  22:57 /usr/...
242001 A  raid   1048782      1   7  60 20 e5b8510 78724  16:41:18   pts/6   0:36 /usr/...
242001 A  util    659612      1  13  60 20 edc3510 76400  11:13:17   pts/0  10:57 /usr/...
242001 A  util   1134736      1   0  60 20 eb91510 75188  06:21:23       -  27:23 /usr/...

Где SZ должен быть размером в 1k единиц, согласно странице руководства; что также не имело особого смысла, поскольку это процессы Java с Xms = 1G (или около того), и, как показано, самый большой процесс имеет ~ 150 МБ. Очередной раз.. ?

И, наконец, мой сервер в настоящее время не загружен максимально, но все еще показывает ~ 20% использования пространства подкачки. Как мне это объяснить?

Я очень потерян. С Solaris это было проще понять.

Кто-нибудь поделится мыслями?

Какие у вас настройки vmm?

Убедитесь, что у вас lru_file_repage = 1.

vmo -o lru_file_repage

Значение по умолчанию (lru_file_repage = 0) приводит к тому, что AIX выгружает страницы приложений, даже если вокруг много кэшированных файлов, из которых страницы могут быть выброшены. Одним из следствий является растущее использование пространства подкачки.

Параметр lru_file_repage = 0 установлен по умолчанию и включает AIX 5.3.