Hvad er problemet helt præcist?
Normalt opretter den mellemste applikationsserver en forbindelsespulje. Når din kode anmoder om en forbindelse, får den en allerede åben forbindelse fra poolen i stedet for at gå igennem overheaden med at skabe en ny forbindelse til databasen. Når din kode lukker en forbindelse, returneres forbindelsen til poolen i stedet for at gå igennem den fysiske lukning af forbindelsen. Det betyder, at der vil være et rimeligt antal forbindelser til databasen, hvor STATUS
i V$SESSION
er "INAKTIV" på et givet tidspunkt. Det er helt normalt.
Selv under belastning er de fleste databaseforbindelser fra et mellemtrin "INAKTIVE" det meste af tiden. En status på "INAKTIV" betyder blot, at i det øjeblik du kørte forespørgslen, udførte sessionen ikke en SQL-sætning. De fleste forbindelser vil bruge det meste af deres tid på enten at sidde i forbindelsespuljen og vente på, at en Java-session åbner dem, eller vente på, at Java-sessionen gør noget med dataene, eller venter på netværket for at overføre data mellem maskinerne.
Får du faktisk en fejl (dvs. ORA-00020:maksimalt antal processer overskredet)? Eller er du bare forvirret over antallet af poster i V$SESSION
?