You might want to look at dbcp in the commons project.
Kapil Sharma wrote:
Thanks for reply. This answers one of the problem. Another problem is db connections. I am monitoring db connections and they are just increasing even if there is no load on the server. The problem is tomcat is not clearing idle connections or timing out the db connections. I still cannot understand how tomcat work directory fill up with 6GB of space in 24 hours.
kapil
-----Original Message----- From: Filip Hanik [mailto:[EMAIL PROTECTED] Sent: 16 March 2003 19:43 To: Tomcat Users List Subject: RE: tomcat tuning
the error is that you have a limited number of file descriptor. so it doesn't look like your db pool is causing the problem, but your OS configuration. Increase the number of file descriptors for your system
Filip
-----Original Message----- From: Kapil Sharma [mailto:[EMAIL PROTECTED] Sent: Sunday, March 16, 2003 11:04 AM To: [EMAIL PROTECTED] Subject: tomcat tuning
Hi Guys, I am facing a performance issue with tomcat 4.1.12 on Solaris. Following is my setup
apache 1.3.27 tomcat 4.1.12 ajp 13
Following is my server.xml context for database and tomcat-apache connector
<ResourceParams name="jdbc/foo"> <parameter> <name>url</name> <value>jdbc:oracle:oci8:@foo</value> </parameter> <parameter> <name>validationQuery</name> <value>select 1 from dual</value> </parameter> <parameter> <name>maxIdle</name> <value>0</value> </parameter> <parameter> <name>maxActive</name> <value>255</value> </parameter> <parameter> <name>driverClassName</name> <value>oracle.jdbc.driver.OracleDriver</value> </parameter> <parameter> <name>maxWait</name> <value>30000</value> </parameter> <parameter> <name>removeAbandoned</name> <value>true</value> </parameter> <parameter> <name>username</name> <value>test</value> </parameter> <parameter> <name>password</name> <value>test</value> </parameter> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <parameter> <name>removeAbandonedTimeout</name> <value>300</value> </parameter> </ResourceParams>
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" acceptCount="20" bufferSize="2048" connectionTimeout="20000" debug="4" enableLookups="false" maxProcessors="255" minProcessors="21" port="8009"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" proxyPort="0" redirectPort="8443" scheme="http" secure="false" tcpNoDelay="true" useURIValidationHack="false"> <Factory className="org.apache.catalina.net.DefaultServerSocketFactory"/>
</Connector>
Following are the problems.
I changed some parameters in the server.xml file to match the number of apache connections. I was also having heavy load on tomcat so I had to increase the database connections. Now the problem is tomcat is not closing the database connections and database pool is filling up. Tomcat filled up the system partition to 100% and threw the following errors for some reason:
exception: java.net.SocketException: Too many open files java.net.SocketException: Too many open files at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353) at java.net.ServerSocket.implAccept(ServerSocket.java:439) at java.net.ServerSocket.accept(ServerSocket.java:410) at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultSe rverSocketFactory.java:107) at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java :335) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:483) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:533) at java.lang.Thread.run(Thread.java:536)
Can anyone help me with this problem and refer me to some good docs for tomcat setup and performance issues for production heavy loaded servers?
Thanks kapil
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
