Получение ошибки «Код ответа: не HTTP-код ответа: org.apache.http.conn.HttpHostConnectException» в jmeter - PullRequest
0 голосов
/ 18 сентября 2019

Я выполняю нагрузочный тест в моем веб-приложении .Net, используя Jmeter.Процесс подачи заявки: запуск - вход в систему - начало теста - ответ на вопросы и ответы - домашняя страница - выход из системы

До 500 пользователей, а иногда и 750, тест выполняется успешно.Но когда я увеличиваю нагрузку, я получаю сообщение об ошибке:

Non HTTP response code: org.apache.http.conn.HttpHostConnectException/Non HTTP response message:
Connect to www.demoname.com:80 [www.demoname.com\/11.111.111.111] failed: Connection timed out: connect 

'11 .111.111.111 '- это IP-адрес моего сервера

Я увеличил объем памяти кучи файла jmeter.batch до HEAP =-Xms1g -Xmx4g -XX: MaxMetaspaceSize = 256 м

версия Apache Jmeter - 5.1.1r1855137

версия Java - 1.8.0_221

Конфигурация сервера: стандартный D4 v2 (8 vcpus, 28 ГиБ памяти)

Как мне избавиться от этой ошибки?

1 Ответ

0 голосов
/ 19 сентября 2019

HttpHostConnectException в основном является экземпляром ConnectException , который:

сигнализирует о том, что произошла ошибка при попытке подключить сокет к удаленному адресу ипорт.Как правило, в соединении было отказано удаленно (например, процесс не прослушивает удаленный адрес / порт).

Так что, скорее всего, ошибка на стороне вашего сервера, потому что JMeter пытаетсяустановить соединение и не может сделать это в рамках заданного времени ожидания

  1. Если вы абсолютно уверены, что ваше приложение работает нормально, вы можете увеличить время ожидания соединения в HTTP-запросеЗначения по умолчанию

    enter image description here

  2. Однако лучше было бы докопаться до сути ошибки и исправить ее на стороне сервера.Наиболее вероятные причины:

    • Ваше приложение перегружено, т. е. не хватает необходимых ресурсов, таких как ЦП, ОЗУ, Сеть и т. д. Убедитесь, что настроили мониторинг этих показателей с помощью, например, Azure.Монитор или JMeter PerfMon Plugin
    • ваша прикладная инфраструктура не настроена должным образом, убедитесь, что вы дважды проверили, работает ли ваш бэкэндТочно настроенный для высоких нагрузок, включая IIS и MSSQL

    • , возможно, ваш код приложения проблематичен, то есть он не может обрабатывать болееX пользователей из-за плохо реализованных алгоритмов.Попробуйте использовать инструмент профилирования, например NProfiler или dotTrace , для обнаружения самых дорогих функций, самых крупных объектов и т. Д.

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