Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Sesja nieaktywna w Oracle przez JDBC

Na czym dokładnie polega problem?

Zwykle serwer aplikacji warstwy środkowej tworzy pulę połączeń. Gdy Twój kod żąda połączenia, otrzymuje już otwarte połączenie z puli, zamiast przechodzić przez obciążenie związane z tworzeniem nowego połączenia z bazą danych. Gdy kod zamyka połączenie, połączenie jest zwracane do puli, a nie przechodzi przez obciążenie fizyczne zamknięcie połączenia. Oznacza to, że będzie rozsądna liczba połączeń z bazą danych, gdzie STATUS w V$SESSION jest „NIEAKTYWNE” w dowolnym momencie. To zupełnie normalne.

Nawet pod obciążeniem większość połączeń z bazą danych z warstwy środkowej jest przez większość czasu „NIEAKTYWNA”. Status „INACTIVE” oznacza jedynie, że w chwili uruchomienia zapytania sesja nie wykonywała instrukcji SQL. Większość połączeń spędza większość czasu albo siedząc w puli połączeń, czekając na sesję Java, aby je otworzyć, albo czekając na sesję Java, aby zrobić coś z danymi lub czekając w sieci na przesłanie danych między maszynami.

Czy rzeczywiście pojawia się błąd (np. ORA-00020:przekroczono maksymalną liczbę procesów)? A może po prostu zdezorientowała Cię liczba wpisów w V$SESSION ?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw wiele rekordów w Oracle

  2. Jak przyspieszyć ładowanie danych z Oracle sql do pandas df

  3. jak korzystać z XMLImporter i FndXdfCmp w Oracle EBS

  4. Oracle Concurrent Manager — CP Analyzer dla pakietu E-Business Suite

  5. Oracle 11g Express Edition dla 64-bitowego systemu Windows?