У меня есть приложение JSP, работающее на glassfish5 с postgresql в качестве службы базы данных. Для управления подключениями я выбрал HikariCP, как показано ниже
config.setDataSourceClassName("org.postgresql.ds.PGSimpleDataSource");
config.addDataSourceProperty("serverName", host);
config.addDataSourceProperty("portNumber", port);
config.addDataSourceProperty("databaseName", database);
config.addDataSourceProperty("user", username);
config.addDataSourceProperty("password", password);
config.addDataSourceProperty("assumeMinServerVersion", postrgesVersion);
config.setMinimumIdle(100);
config.setMaximumPoolSize(100);
config.setAutoCommit(false);
config.setIdleTimeout(3000);
ds = new HikariDataSource(config);
и реализация с источником данных таким образом
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
когда я запускаю следующий запрос в pgAdmin
select datname,pid,usename,client_addr,client_port,backend_start,query,state from pg_stat_activity where datname = 'db_name' AND client_addr='10.1.0.56'
Я получаю следующие результаты со многими соединениями, в которых нет запросов, как показано на фотографии ниже
Через несколько секунд postgres жалуется на слишком большое количество соединений. Кто-нибудь когда-либо испытывал что-то подобное, пожалуйста, помогите.