jboss standalone-full. xml, проблема с минимальным и максимальным размером пула - PullRequest
0 голосов
/ 21 июня 2020

нужна помощь, у меня есть приложение java, работающее на jboss -6. недавно мы получили требование сохранить наши min-pool-size и max-pool-size одинаковыми, а также значение prefill должно быть "true".

<pool>
<min-pool-size>100</min-pool-size>
<max-pool-size>100</max-pool-size>
<prefill>true</prefill>
</pool>

По умолчанию наш standalone-full. xml имеет следующий источник данных:

 <datasource jta="false" jndi-name="java:jboss/<datasourcename>" pool-name="<datasourcename>" enabled="true" use-java-context="true" statistics-enabled="true">
                    <connection-url>jdbc:mysql://<dbhostip>:<port>/<dbdetailsForconnection></connection-url>
                    <driver>mysql</driver>
                    <pool>
                        <max-pool-size>100</min-pool-size>
                        <prefill>true</prefill>
                    </pool>

у нас есть требование установить размер пула, как показано ниже:

<pool>
<min-pool-size>100</min-pool-size>
<max-pool-size>100</max-pool-size>
<prefill>true</prefill>
</pool>

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

IJ000610: невозможно заполнить пул: javax.resource.ResourceException: не удалось создать соединение Когда мы определяем настройку нашего пула соединений, как показано ниже: Вызвано: com. mysql .jdb c .exceptions.jdbc4.MySQLNonTransientConnectionException: слишком много подключений

Подходы, которые я пробовал: * удалить источник данных из jboss-cli и снова добавить источник данных * напрямую редактировать автономно-полный. xml * после каждого изменения: перезагружать его. * выполните развертывание, а затем отредактируйте xml, перезагрузите после * перед развертыванием, отредактируйте, перезагрузите

Решение: у меня есть два решения, чтобы заставить его работать:

  1. мин. пул должен быть меньше макс.
    <pool>
    <min-pool-size>1</min-pool-size> 
    <max-pool-size>100</max-pool-size>
    <prefill>true</prefill>
    </pool>
Удалите профиль, так как по умолчанию для заполнения соединения потребуется минимальный размер пула.
    <pool>
    <min-pool-size>100</min-pool-size>
    <max-pool-size>100</max-pool-size> 
    </pool>

, но это решение противоречит требованиям.

1 Ответ

0 голосов
/ 21 июня 2020

После множества головокружений, наконец, я решил эту проблему, увеличив максимальное количество подключений на моем сервере db, т.е. mysql. после установки лимита max_connection. он начинает работать

...