栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

记一次tmp目录被写满导致服务器崩溃的产线事故

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

记一次tmp目录被写满导致服务器崩溃的产线事故

今天在产线报警群报出了我们某个服务失去响应的情况,打开跳板机登录发现果然登录不上了。

开始排查问题,这个问题已经不是第一次了,时间也很固定,每天9点多开始,初步定位是定时任务引起,看xxl-job面板,发现确实有两个定时任务是9点开始执行的。经过与运维沟通,确定是tmp目录(我们只有3.6G写满导致),开始检查代码,发现的确有很多指定了/tmp目录的代码,而且定时任务产生的文件非常大且多,最终导致服务器失去了响应。

在我们开发过程中,我们应该尽量少用tmp目录,在开发过程中我们指定其他位置。

当我们用

File file = File.createTempFile("1111", "txt");创建临时文件时,文件一般放在java.io.tmpdir指定的位置,如果量很大,就会导致tmp目录占满,最终导致服务器失去响应。

因为tmp目录比较小,我们可以改成其他位置,我们可以采用如下两种方式:

System.setProperty("java.io.tmpdir", "/opt/work");

或者:

java -Djava.io.tmpdir=/path/to/tmpdir 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/582973.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号