【解决】网站运行一段时间后就无法访问,重启Tomcat才能恢复
【背景】重新部署了网站,运行环境是Linux(centOS6.5)+Tomcat7+mysql5,作了相关安全配置和系统优化工作;
【问题】运行几天后,出现了网站无法访问的现象,具体是进入网站首页时页面呈现空白状态,网站ping值也很不稳定;
查看tomcat访问日志,发现有同一IP在同一秒有超过10个的访问记录,且这种IP来源有不少;
【解决办法】试了很多办法,问题依然存在,临时解决办法是每次重启tomcat进程;
后来尝试加大JVM的内存大小,修改./tomcat/bin/ catalina.sh,加入: JAVA_OPTS="-server-Xms4096m -Xmx4096m -Xmn512m -XX:PermSize=1024M -XX:MaxPermSize=2048m -Xss1024k-XX:SurvivorRatio=4 -XX:MaxTenuringThreshold=20 -XX:+UseParNewGC-XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=73-XX:+UseCMSCompactAtFullCollection -XX:+CMSParallelRemarkEnabled-XX:CMSFullGCsBeforeCompaction=2 -Djava.awt.headless=true"
重启tomcat后,运行了几天就再也没有出现过问题。
注意:具体参数大小请结合服务器的具体配置。