В Java проект използвам ojdbc6 jar
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.1.0</version>
<scope>compile</scope>
</dependenc>
Първият път, когато стартирам за един ден, dataSource.getConnection() е бърз. Вторият път обикновено е добре. Следващите няколко пъти отнемат около 45 секунди. След това отнема няколко минути. След като стартирам ПЪРВОТО свързване на дадено приложение, всички нови връзки, които получавам, са много много бързи. Това забавяне е получаване само на ПЪРВАТА връзка за дадено изпълнение.
Какво прави първата ми връзка толкова бавна?
Гледам netstat и не виждам никаква връзка да виси след успешно изпълнение. Опитах няколко различни пула за свързване (DBCP, C3PO) без успех. При отстраняване на грешки чрез изходния код, забавянето е 100% на реда на org.springframework.jdbc.datasource.DataSourceUtils:
Connection con = dataSource.getConnection();
Някакви идеи?
Редактирано за повече подробности
1) Използвам набор от връзки (DBCP или C3PO), който запазва връзките за бъдеща употреба. Когато говоря за получаване на нова връзка, имам предвид, докато първата връзка се използва.. Трябва да отида до DB и да получа НОВА връзка. Разбира се, мога да се върна и да получа същата връзка от пула за връзки отново и отново. Но получаването на втори по едно и също време също е бързо.
2) Не знам с колко връзки моята база данни ми позволява да бъда влязъл. Някаква идея къде е този имот в Oracle?