因为上传,下载,复制,修改文件,tomcat异常关闭,无异常,无报错,无记录信息的情况,可查看是否被杀毒软件当成是病毒或者是被某些程序kill(杀死)了进程。同样用于各种进程莫名关闭的情况

前些天接到了一个bug,关于tomcat异常关闭。
起先是接到投诉,说 tomcat晚上被强制关闭了,后来发现是一行代码导致的,File.delect();
类似于以下代码:

File files = new File("C:\\Users\\win7\\Desktop\\test.docx");
files.delete();

当前代码,我没注意到时什么原因,只是排查到是因为这行代码导致的tomcat崩溃,当时360没有任何提示,界面上面也没有任何异常信息,仅仅是被关闭了。
后来有很多烟雾弹:
A:代码有bug,导致的tomcat异常关闭
处理:分析代码是否有问题,在本地无异常,上到测试环境也没有问题
B:java回收机制问题
处理:还是在写法上面做处理
C:升级运行环境
处理:tomcat 7.0.68 + jdk1.7.0.80升到tomcat 8.5 + jdk 1.8.0.203,奇怪的现象出现, 升级之后居然可以正常delete,非常奇怪。但是jdk 7 跟 8 有个分水岭,很多框架不能支持。例如:Spring 2.0 只支持到1.7,那时还没有1.8jdk,为何可以成功,至今无解
D:升级失败(因为要升级的话工程量太大,要加钱的),然后放弃,重新返回研究代码是否出现什么bug,在研究的途中发现一个数量很奇怪,为什么是删除 5 个文件会失败,而删除4个文件却不会失败。
处理:分析回收机制,重写代码,依然没有修复这个bug
E:重点分析“5”这个数量,偶然发现,有个360在运行,我点击查看日志:
在这里插入图片描述
好吧,被这个软件给kill掉了。

总结:若发现有如下异常
1、tomcat 异常关闭,
2、没有报错信息,
3、查不到任何记录,
可先看看有没有保护程序在运行着。上面就是一个文档保护机制,不允许次数过多的修改文件。复制文件,删除文件,修改文件都会被判定是病毒。可先排查是否存在这种保护程序的存在。个人觉得linux同样可用!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值