У меня есть серверное приложение, которое работает на 64-битном сервере Ubuntu с 4 ГБ ОЗУ.
Когда я устанавливаю параметры конфигурации JVM (мы используем Sun JVM 1.6) следующим образом: -Xms1024m -Xmx2560m, я вижу странное распределение памяти при запуске приложения (оно работает на Tomcat 6).
Команда top в Ubuntu показывает, что размер виртуальной памяти составляет почти 3,2 ГБ. Я не понимаю, выделяла ли Ubuntu память, которую я запрашивал при запуске JVM, или, может быть, Ubuntu добавляет подкачку части к значению -Xmx, и, таким образом, я получаю этот большой размер.
Если я запускаю 32-битный сервер Ubuntu и настраиваю -Xmx1536m, я вижу 1721m при запуске команды top. Кто-нибудь может объяснить мне, что это за дельты и когда они появились?
У меня запущены другие процессы в этих экземплярах, и я хочу понять, какую конфигурацию памяти я должен применить к ним, принимая во внимание результаты команды top в Ubuntu.
Спасибо заранее,
Alex