我正在使用 tomcat server 7 (& JRE 1.6) 在 debian VPS 上运行一个基于 db 的重型 GWT 应用程序。我的应用程序包含许多 java servlet,它们通过 tomcat 连接池与 MySQL5 数据库通信(没有连接池 mysql 将在 3 分钟内崩溃!)
我的应用程序运行良好,而 tomcat 服务器上没有重负载,但是当在线用户和他们的请求增加,tomcat 服务器失败,没有有用的日志或错误消息(当我想访问运行在 tomcat 上的任何 Web 应用程序时,我只是收到连接超时错误)& 这个问题一直存在,直到我重置我的 tomcat 服务器。我知道我的 VPS 没有内存限制,也没有任何 MySQL 连接问题,所以我真的不知道会导致这种情况:(
这是 server.xml 中的主机标签(我有很多这样的虚拟主机,但所有的主机标签都是相似的)
<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>
任何想法?