JVM должна была выйти, но не - PullRequest
0 голосов
/ 25 октября 2018

Во время распределенного тестирования с Jmeter 3.3 в режиме без графического интерфейса я получаю сообщение об ошибке, как я могу это исправить:

Я использую ту же версию JMeter и JDK на Master, а также на ведомых машинах.

JVM должна была выйти, но не вышла.Следующие потоки, не являющиеся демонами, все еще работают (DestroyJavaVM в порядке): Thread [main, 5, main],

stackTrace:java.net.SocketInputStream#socketRead0
java.net.SocketInputStream#socketRead
java.net.SocketInputStream#read
java.net.SocketInputStream#read
java.io.BufferedInputStream#fill
java.io.BufferedInputStream#read
java.io.DataInputStream#readByte
sun.rmi.transport.StreamRemoteCall#executeCall
sun.rmi.server.UnicastRef#invoke
java.rmi.server.RemoteObjectInvocationHandler#invokeRemoteMethod
java.rmi.server.RemoteObjectInvocationHandler#invoke
com.sun.proxy.$Proxy19#rrunTest
org.apache.jmeter.engine.ClientJMeterEngine#runTest at line:149
org.apache.jmeter.engine.DistributedRunner#start at line:132
org.apache.jmeter.engine.DistributedRunner#start at line:149
org.apache.jmeter.JMeter#runNonGui at line:1005
org.apache.jmeter.JMeter#startNonGui at line:910
org.apache.jmeter.JMeter#start at line:538
sun.reflect.NativeMethodAccessorImpl#invoke0
sun.reflect.NativeMethodAccessorImpl#invoke
sun.reflect.DelegatingMethodAccessorImpl#invoke
java.lang.reflect.Method#invoke
org.apache.jmeter.NewDriver#main at line:248

1 Ответ

0 голосов
/ 25 октября 2018

Скорее всего, ваш (и) движок (и) JMeter перегружен, поэтому не может корректно завершить работу запущенных потоков, когда вы их об этом попросите.

  1. Убедитесь, что вы следуете JMeter Best Practices
  2. В самых первых состояниях "Best Practice" Всегда используйте последнюю версию JMeter , поэтому учтитепереход на JMeter 5.0 или любую последнюю версию, доступную по адресу JMeter Downloads page
  3. Убедитесь, что у ваших экземпляров JMeter достаточно места для работы с точки зрения ЦП, ОЗУ и т. д.на.Для этого вы можете использовать JMeter PerfMon Plugin , если у вас нет другого программного обеспечения для мониторинга.
  4. Возьмите дамп потока и проверьте его - так вы узнаете, где именно застрял ваш тест
  5. Введите разумные значения времени ожидания в HTTP-запросеЗначения по умолчанию , поэтому в случае, если сервер не отвечает, JMeter не будет ждать бесконечно, а скорее выдаст ошибку с ошибкой

    JMeter HTTP Request Defaults

  6. И, наконец (однако я бы не рекомендовал это), вы можете отменить эту проверку , добавив следующую строку в user.properties file:

    jmeter.exit.check.pause=-1
    

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...