公司的JAVA WEB应用放在了一台PC Server上供内网测试,项目由我来发布。PC Server安装的系统是Windows Server 2003,内存DDR2 800 2G,CPU:Intel E4500。在这台机器上我部署了两个项目,服务器选择了Apache Tomcat 5.5版本的,JDK 1.6。无意中发现两个web应用运行一段时间就自动关闭了。再重新启动Tomcat还是一样,运行一段时间就自动关闭,非常的诧异。先看了看Catalina下面的日志,更诧异的是日志里居然没有任何异常信息,让我一头雾水。上网查询,看遍了Tomcat自动关闭的几个原因:
1,并发用户数目过大,也会导致tomcat自动停止服务。
2,系统本身的网络负载平衡没有做好,导致tomcat自动停止服务;
3,程序迭代不合理也是一个原因;
4,数据库连接未关闭,导致资源损耗过重,会引起服务停止;
5,程序严重错误,引起tomcat停止服务。
各个检查,发现根本与我的情况不同。又有人说是JVM的堆栈内存、永久保护区域内存设置小了,我又不断的调试,最后还是难逃自动关闭的噩梦。但偶然间发现部署在安装版(exe)的Tomcat下面的web应用就不会挂掉,眼前一亮,难不成是负载不平衡导致的服务器挂掉???马上下载Apache+JK,与两个Tomcat一起整合,结果Apache依然坚挺,可tomcat却难逃厄运。
就在勉强要自己接受眼前这种现实的情况下,突然注意到和Tomcat一起运行的IE浏览器也一同挂掉,突然想起了可能的原因。因为我是用自己机器的远程连接控制服务器上Web的发布,所以每次我都用管理员的账号登录该机器,但自己曾经对这台机器做过设置,再控制者不再使用服务器时会自动让控制者离开远程控制的控制台,这样允许别人控制服务器。这个空闲等待时间是10分钟。也就是说如果控制者10分钟后不再使用服务器,Server系统会自动踢出该用户,同时也会清空他的配置信息,包括他的会话信息等。也就是说,我用管理员的权限登录Server,部署完项目后,只要一直使用,Tomcat就不会自动关闭,如果我关闭远程连接,系统会在一段时间内结束掉我启用的任何进程,同时也关闭了我开启的两个Tomcat。
原因找到了就开始想解决的办法。问了问网管,网管说你可以用console的方式远程登录,这样的效果跟直面操作该机器是一样的,试了试,果真如此。现在系统在服务器上稳定运行,再没出现过自动关闭的情况。至于安装版的Tomcat为何不挂掉,是因为Tomcat起在了服务里面,不会影响到它。
分享到:
相关推荐
tomcat宕机重启脚本,比较简单的一种设置
在里面选择“网站”中的某个网站(此网站就是我们需要使用JSP环境的站,并且在此将目录设置与Tomcat下的此网站目录设置为一致), 在其上点右键选“属性”,在弹出的页框里选择“ISAPI筛选器”,点“添加”, 筛选...
tomcat做服务器在windows下开机自动运行
windows 2003安装apache+tomcat+mysql图文教程
七、Windows server 2003数据库SQL SERVER 2008只允许应用服务器访问,通过ip限制 35 八、SSL加密强制使用SSL传输层 36 九、数据库安全策略 39 1、身份鉴别,数据库使用复杂口令 39 2、数据库应拥有冗余,提供异地...
Windows平台下监控Tomcat运行时服务假死或异常后并尝试自动重启Tomcat,已测试可用 Windows平台下监控Tomcat运行时服务假死或异常后并尝试自动重启Tomcat,已测试可用
tomcat自动关闭原因
windows下tomcat的catalina.out按天自动分割,windows下tomcat日志按天自动分割
在windows下部署tomcat的详细步骤
tomcat8-servertomcat8-servertomcat8-servertomcat8-server
shell监控tomcat进程,宕机重启,其他服务也是类似。
java监听Tomcat是否宕机 可以重启
当tomcat服务假死或异常停止,可以快速实现自动重启
tomcat连接sqlserver2008
NULL 博文链接:https://bingo6001.iteye.com/blog/1707153
Tomcat8.5服务器server.xml文件,误删的可以下载,Tomcat服务器server.xml基本都是一样的,只是版本不一样
Shell脚本定时监控tomcat,服务挂掉自动重启
tomcat windows版本 x64
windows下配置nginx反向代理tomcat,从下载地址开始讲起,第二步讲常用命令 第三步讲了一个实例,第四步是配置说明
win7自动清除tomcat缓存及日志