Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / JBoss7 и лавинообразный рост числа подключений к БД / 5 сообщений из 5, страница 1 из 1
26.03.2013, 14:57:36
    #38198753
snakecatcher
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JBoss7 и лавинообразный рост числа подключений к БД
Добрый день!
У меня имеется сервер на базе slackware 13.10, сервера бд postgresql 8.4.9 и сервера приложений jboss 7.1.1 final (standalone).
Клиенты взаимодействуют с жбоссом через JAXWS_JSE веб-сервисы. Соединение с бд из веб-метода осуществляется подобным образом :

Код: java
1.
2.
3.
4.
Context ctx = new InitialContext();
DataSource ds = ( DataSource) ctx.lookup( Parameters.PGSQL_CONTEXT_UTR);
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.FETCH_REVERSE);



Жбосс, посредством своей модульной системы, взаимодействует с пулом соединений базы данных. Пул описан в standalone.xml так:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<datasource jta="true" jndi-name="java:jboss/PostgresDS" pool-name="postgresDS" enabled="true" use-java-context="true" use-ccm="true">
                    <connection-url>jdbc:postgresql://localhost:5432/my_db?charSet=UTF-8</connection-url>
                    <driver>org.postgresql</driver>
                    <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
                    <pool>
                        <min-pool-size>10</min-pool-size>
                        <max-pool-size>1800</max-pool-size>
                        <prefill>false</prefill>
                    </pool>
                    <security>
                        <user-name>db_admin</user-name>
                        <password>pwd</password>
                    </security>
                    <statement>
			<track-statements>true</track-statements>
                        <prepared-statement-cache-size>16</prepared-statement-cache-size>
                    </statement>
		    <timeout>
			<idle-timeout-minutes>1</idle-timeout-minutes>
		    </timeout>
</datasource>
<drivers>
                    <driver name="org.postgresql" module="org.postgresql">
                        <driver-class>org.postgresql.Driver</driver-class>
                    </driver>
</drivers>



Собственно, сама проблема: при работе сервера (от 100 до 800 клиентов) в течении примерно 7-8 часов число установленных соединений с базой данных стремится к размеру пула, как следствие растет к-во задействованной оперативной памяти, и сервер заваливается... При всем при этом к-во соединений к бд с течением времени становится в разы больше к-ва соединений к жбоссу. При этом некоторые соединения к бд могут торчать в состоянии established все эти 7-8 часов, а некоторые переходят в состояние time_wait, и все же отваливаются (тем не менее, происходит неуклонный рост числа подключений к бд ).
Почему не происходит закрытие соединений в пуле по истечении таймаута или что может удерживать подключения к бд так долго?
ПыСы: Проверял код веб-методов на предмет незакрытых результсетов и стейтментов - таковых не имеется...
...
Рейтинг: 0 / 0
26.03.2013, 15:08:06
    #38198772
ivanra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JBoss7 и лавинообразный рост числа подключений к БД
snakecatcherПыСы: Проверял код веб-методов на предмет незакрытых результсетов и стейтментов - таковых не имеется...
А закрытие коннекта тоже есть?
Код: java
1.
2.
3.
4.
5.
6.
Connection conn = ds.getConnection();
try {
...
} finally {
    try {connect.close();} catch(Exception ignored) {log.error(ignored);}
}
...
Рейтинг: 0 / 0
26.03.2013, 15:11:22
    #38198780
snakecatcher
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JBoss7 и лавинообразный рост числа подключений к БД
авторА закрытие коннекта тоже есть?
есть
...
Рейтинг: 0 / 0
26.03.2013, 15:20:02
    #38198799
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JBoss7 и лавинообразный рост числа подключений к БД
Проверить настройки:
https://community.jboss.org/wiki/DetectingAndClosingLeakedConnectionsInJBoss71
Читать логи на пример сообщений об утечках.
...
Рейтинг: 0 / 0
26.03.2013, 15:20:39
    #38198803
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JBoss7 и лавинообразный рост числа подключений к БД
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / JBoss7 и лавинообразный рост числа подключений к БД / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]