Ошибка ввода-вывода: сетевой адаптер не смог установить соединение в нагрузочном тесте Jmeter

Ошибка ввода-вывода: сетевой адаптер не смог установить соединение в нагрузочном тесте Jmeter

Я провожу нагрузочный тест веб-службы SOAP с помощью Jmeter, в режиме без графического интерфейса я начинаю получать ошибки, начиная с 300 потоков. Это было обнаружено с помощью «Утверждения ответа» со следующим правилом: «Тест не пройден: ожидаемый текст не содержит /"rta":"FAIL"/».

В графическом режиме я вижу ошибку нескольких образцов в «Просмотре дерева результатов»:

Ошибка ввода-вывода: сетевой адаптер не смог установить соединение

Моя текущая конфигурация Oracle:

select current_utilization, limit_value 
from v$resource_limit 
where resource_name='sessions';

Рта:

current_utilization, limit_value
177, 987

Курсоры

select max(a.value) as highest_open_cur, p.value as max_open_cur
  from v$sesstat a, v$statname b, v$parameter p
  where a.statistic# = b.statistic# 
  and b.name = 'opened cursors current'
  and p.name= 'open_cursors'
  group by p.value;

Рта:

  highest_open_cur, max_open_cur
  241, 4000

Эта ошибка связана с какой-то конфигурацией в базе данных Oracle?


Больше информации: ...

Версия базы данных:

Oracle Database 12c Standard Edition Release 12.2.0.1.0 - 64bit Production
TNS for 64-bit Windows: Version 12.2.0.1.0 - Production

Настройки Jmeter:

Inter® Xeon® Gold 6126 CPU @2.6 Ghz 
4 Sockets, 4 Virtual Processors
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)
HEAP=-Xms20G -Xmx20G -XX:MaxMetaspaceSize=128m
Windows Server 2016 Standard

План испытаний:

  • Группа потоков (количество потоков 320, период нарастания 37, количество циклов 1)
  • 5 HTTP-запросов с 1 утверждением в каждом.
  • 1 прослушиватель PerfMon Metrics Collector

Показатели сервера

Сеть

решение1

Ошибка выдаетсяДрайвер Oracle JDBCкогда не удается установить соединение с базой данных.

Вотдругой примерчеловека, страдающего от той же проблемы.

Я ожидаю, что ваше приложение не использует должным образомПул соединенийшаблон (или он просто не реализован), поэтому соединения не закрываются после выполнения запроса. Я бы рекомендовал проверить ваше приложение с помощью инструмента профилирования, напримерJProfilerилиВашКомплект- таким образом вы получите более четкое представление о том, что происходит.

Другой способ добраться до сути проблемы — запустить нагрузочный тест базы данных, т. е. выполнить запросы напрямую без промежуточных вызовов API SOAP с помощью JMeter.Запрос JDBCSampler. Таким образом, вы сможете утверждать, что база данных работает нормально, а проблема в приложении Java (или наоборот). СмотритеНастоящий секрет создания плана тестирования базы данных с помощью JMeterознакомиться с концепцией нагрузочного тестирования баз данных с использованием JMeter.

Связанный контент