Странное использование памяти в Oracle Linux

У меня есть оракул Linux 7 под управлением Pentaho (Java-приложение). Эта машина имеет 23 ГБ оперативной памяти и повышает производительность Pentaho. Я пытаюсь настроить Java для выделения 10 ГБ оперативной памяти в Pentaho ( -Xms10240m). Но после того, как я начинаю пентахо, я получаю это.

biserver-ce]# free -g
               total        used        free      shared  buff/cache   available
Mem:             23           4           0           0          18          18
Swap:             9           0           9

Математика не совпадает (4 ГБ использованной памяти + 0 свободной памяти не равно 23 ГБ).

Память подкачки не используется, и я не понимаю, почему 18 Гб данных в кеше. На другой машине с таким же конфигом, но для тестирования это не происходит.

Процесс Java работает

    root     12409     1  2 Jul26 ?        00:21:16 java -     Djava.util.logging.config.file=/opt/pentaho/server/biserver-ce/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dserver -Xmx10240m -Xms10240m -XX:MaxPermSize=1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.jnu.encoding=utf-8 -Dfile.encoding=utf-8 -Djava.awt.headless=true -Djava.endorsed.dirs=/opt/pentaho/server/biserver-ce/tomcat/endorsed -classpath /opt/pentaho/server/biserver-ce/tomcat/bin/bootstrap.jar -Dcatalina.base=/opt/pentaho/server/biserver-ce/tomcat -Dcatalina.home=/opt/pentaho/server/biserver-ce/tomcat -Djava.io.tmpdir=/opt/pentaho/server/biserver-ce/tomcat/temp org.apache.catalina.startup.Bootstrap start

лимит конфигурации

#ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 190821
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 190821
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

РЕДАКТИРОВАТЬ:

После очистки кеша

echo 3 > /proc/sys/vm/drop_caches

Я могу запустить службу с 10 ГБ ОЗУ, но если я остановлю службу, кэш снова вырастет. Есть ли способ избежать очистки кэша вручную каждый раз, когда я останавливаю / запускаю службу?

0 ответов

Другие вопросы по тегам