программа установки кучи в jmeter - PullRequest
0 голосов
/ 31 августа 2018

Почему серверу доступна память только около 1,5 ГБ, но после установки HEAP на 5 ГБ в jmeter он все равно может нормально запускаться?

enter image description here

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

Согласно Настройка производительности Java, профилирование и управление памятью статья

  • Если у вас нет проблем с паузами, попробуйте выделить виртуальной машине как можно больше памяти

  • Установка -Xms и -Xmx на одно и то же значение…. Но будьте уверены в поведении приложения

  • Обязательно увеличивайте объем памяти при увеличении количества процессоров, поскольку распределение может быть распараллелено

  • Не забудьте настроить пермское поколение

Согласно Осмысление управления памятью и измерений памяти ключей

  • Кэшированная память содержит данные или программный код, который был извлечен в память во время текущего сеанса, но больше не используется в настоящее время. При необходимости диспетчер памяти Windows сбросит содержимое кэшированной памяти, чтобы освободить место для вновь вызванных данных.
  • Свободная память представляет оперативную память, которая не содержит никаких данных или программного кода и свободна для немедленного использования.

  • Commit Charge (также называемый размером commit) - это общий объем виртуальной памяти, к которой программа коснулась (зафиксированная) в текущем сеансе, включая память, выгруженную из физической памяти в файл подкачки на диске. Счетчики «Память и физическая память» на вкладке «Быстродействие» диспетчера задач представляют сумму этого значения для всех процессов и ядра. Предел фиксации - это общий объем доступной физической памяти и файла подкачки, другими словами, максимальная виртуальная память.

Таким образом, ваша система может иметь гораздо больше, чем вы видите в Free memory, поскольку она может выделять дополнительные страницы из кэшированного и виртуального пулов, поэтому должно быть в порядке, чтобы предоставить 5 ГБ пространства для JMeter.

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

См. 9 Простые решения для теста нагрузки JMeter «Ошибка памяти» * Статья 1057 * для получения дополнительной информации о настройке JMeter для высоких нагрузок.

0 голосов
/ 02 сентября 2018

То, что здесь произойдет, - это то, что система будет загружать / выводить память для запуска Java-программы.

Это может работать, но очень негативно повлияет на производительность вашего Jmeter.

Так что, как правило, вы должны избегать любого входа / выхода для вашей Java-программы

...