I'm running a heavy db-based GWT application on a debian VPS using tomcat server 7 (& JRE 1.6). My app contains a lot of java servlets which communicate with MySQL5 database via a tomcat connection pool (without connection pooling mysql will crash within less than 3 minute!)
My app works nice while there is no heavy load on tomcat server, but when number of online users & their requests increase, tomcat server fails with no useful log or error message(I just get a connection timeout error when I want to access any of web applications running on tomcat) & this problem exists till I reset my tomcat server. I know that I've NO memory limitation on my VPS nor any MySQL connection problem, so I really don't know that causes this situation :(
This is host tag in server.xml (I've many of these virtual hosts, but the host tag of all is similar)
<Host name="sub1.mydomain.com" appBase="/var/www/sites/gwt_app" >
<Context path="" reloadable="true" docBase="myDocBase"
xmlValidation="false" xmlNamespaceAware="false" crossContext="true" >
<Resource name="jdbc/mysql/db" auth="Container" type="javax.sql.DataSource"
initialSize="3" maxActive="50" maxIdle="10"
maxWait="15000" removeAbandoned="true" removeAbandonedTimeout="120"
validationQuery="select now();"
username="user_1" password="pass" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/db_1?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&connectionCollation=UTF8_PERSIAN_CI&noAccessToProcedureBodies=true"
/>
</Context>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/var/www/sites/gwt_app_logs" prefix="tomcat_access_" suffix=".log" pattern="common" resolveHosts="false"/>
</Host>
any idea?