sql >> Database teknologi >  >> RDS >> Mysql

Zombie-forbindelser til MySQL ved hjælp af c3p0 med tomcat

Der er et par muligheder.

Det mest sandsynlige er, at du har placeret dette ressourceelement i $CATALINA_BASE/conf/context.xml Denne fil giver standardcontext.xml for hver webapplikation. Derfor, hvis du har seks webapplikationer, har du seks forbindelsespuljer. Da den mindste afstemningsstørrelse er 200, vil der være mindst 200*6=1200 forbindelser åbnet til databasen.

Den anden mulighed er, at webapplikationen er blevet genindlæst. Du bør få en ny forbindelsespulje, og den gamle vil blive GC'd. Men hvis du har en hukommelseslækage ved genindlæsning (meget let at gøre uden at være klar over det), kan det holde forbindelsespuljen, sammen med dens åbne forbindelser, i hukommelsen, hvilket øger dine samlede forbindelser.

At sætte definitionerne i server.xml :

<Server>
  <GlobalNamingResources>
     <Resource name="jdbc/xxxx">...</Resource>
  </GlobalNamingResources>
</Server>

og dette i context.xml :

  <ResourceLink name="jdbc/xxxx"
      global="jdbc/xxxx"
      type="com.mchange.v2.c3p0.ComboPooledDataSource" />



  1. Oprettelse af et indeks på en tabelvariabel

  2. Oracle datatype:Skal jeg bruge VARCHAR2 eller CHAR

  3. Låsning af en række i en MYSQL-tabel under en transaktion

  4. Hvordan sletter jeg en tabel fra en mysqldump