Не удалось открыть JDBC-соединение. Невозможно получить управляемое соединение для Java во время нагрузочного теста.

Ниже отмечена ошибка при нагрузочном тестировании с несколькими пользователями, а не в случае одного запроса SOAP.

Не удалось открыть JDBC-соединение для транзакции; Вложенное исключение: java.sql.SQLException: javax.resource.ResourceException: IJ000453: невозможно получить управляемое соединение для java:

2 ответа

Это может быть связано с одним из следующих:

  1. Пул соединений с источником данных не был настроен (например, max-pool-size и blocking-timeout-millis) правильно для максимальной нагрузки на приложение.
  2. Приложение пропускает соединения, потому что оно не закрывает их и тем самым возвращает их в пул.
  3. Потоки с соединениями с базой данных зависают и держатся за соединения.

Убедитесь, что min-pool-size а также max-pool-size Значения для соответствующего источника данных устанавливаются в соответствии с application load testing и соединения закрываются после использования внутри кода приложения.

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

Если вам нужно указать основную причину сбоя, я могу подумать как минимум о двух причинах этого:

  1. Конфигурация вашего приложения или сервера приложений не подходит для высоких нагрузок (т. Е. Количество соединений в вашей конфигурации пула соединений JBOSS JDBC меньше, чем требуется, учитывая количество виртуальных пользователей, которых вы моделируете. Попробуйте изменить min-pool-size а также max-pool-size значения, соответствующие количеству виртуальных пользователей
  2. Ваша база данных перегружена, следовательно, не может принять столько запросов. В этом случае вы можете рассмотреть нагрузочное тестирование базы данных отдельно (т. Е. Запускать запросы к базе данных напрямую через сэмплер JDBC Request JMeter, не затрагивая конечную точку SOAP вашего приложения.) Чтобы узнать больше, ознакомьтесь со статьей "Настоящий секрет построения плана тестирования базы данных с помощью JMeter". о концепции нагрузочного тестирования базы данных.
Другие вопросы по тегам