Использует ли Hibernate пул соединений по умолчанию? Если да, то какое значение по умолчанию для * connection.pool_size *? Разве это не конфликтует с * hibernate.connection.release_mode *? Разве идея пула соединений не в закрытии соединений?
спящий режим пула соединений по умолчанию
Ответы (3)
Пул соединений гибернации по умолчанию (который не должен использоваться в производственной среде) имеет ограничение по умолчанию, равное 1, поскольку он предназначен для использования только для простого тестирования. Однако это можно настроить с помощью файла hibernate.properties, поэтому стоит проверить, определен ли он там в вашем проекте.
Речь идет о недвижимости:
hibernate.connection.pool_size
Информация об этом в основном содержится в этой ссылке:
http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/session-configuration.html
Хотя здесь напрямую не указан размер пула соединений по умолчанию, в нем есть большая часть информации, которая может вам понадобиться по вопросу о пуле соединений в спящем режиме.
По умолчанию Hibernate поставляется с возможностью получения реализации источника данных (javax. sql.DataSource) из JNDI, задав свойства соответствующим образом:
Максимальный размер пула подключений JNDI по умолчанию - Без максимального размера.
Здесь вы можете найти значения по умолчанию для пула JNDI.
http://docs.oracle.com/javase/jndi/tutorial/ldap/connect/config.html
Чтобы получить эффективную производительность, вы должны использовать third party pool для лучшей производительности и стабильности.
Если вы используете сервер приложений, вы можете использовать встроенный пул (обычно соединение устанавливается с помощью JNDI). Если вы не можете или не хотите использовать встроенный пул соединений вашего сервера приложений, Hibernate поддерживает несколько других пулов соединений, таких как
c3p0
Apache DBCP
Proxool
http://www.informit.com/articles/article.aspx?p=353736&seqNum=4
Я не нашел документации о значениях Hibernate по умолчанию для пула соединений, поэтому я просмотрел исходный код и нашел (класс DriverManagerConnectionProviderImpl в hibernate-core-4.3.8.Final):
hibernate.connection.initial_pool_size = 1;
hibernate.connection.min_pool_size = 1;
hibernate.connection.pool_size = 20;
hibernate.connection.pool_validation_interval = 30;
hibernate.connection.autocommit = false;