Bootstrap

nodejs - vue 视频切片上传,本地正常,线上环境导致磁盘爆满bug

nodejs

视频切片上传,本地正常,线上环境导致磁盘爆满bug

在这里插入图片描述

原因:
在这里插入图片描述
在这里插入图片描述
然后在每隔一分钟执行du -sh `ls` ,发现文件变得越来越大,即文件下的mp4文件越来越大
在这里插入图片描述
最后导致磁盘直接爆满
在这里插入图片描述

排查原因
1、尝试将m3u8文件夹下的所有视频文件进行删除
在这里插入图片描述
发现磁盘依旧是爆满状态

执行lsof | grep deleted,用于查找当前被删除但仍被某个进程持有的打开文件

找出为什么磁盘空间没有按照预期释放,即使某些大文件看起来已经被删除了。这是因为直到所有对该文件的引用(包括打开的文件描述符)都关闭之后,文件所占用的空间才会真正被标记为可重用。
在这里插入图片描述

然后在执行kill 274786杀死进程,即可恢复磁盘爆满的bug

在这里插入图片描述
是否有点感觉:通过以上排查,应该是某进程一直在写入视频文件。

测试:
1、执行lsof | grep node,发现多处出现重复进程
以下图片不止一次出现一模一样的
在这里插入图片描述
2、执行kill 275147,发现已解决上诉每隔一分钟视频文件越来越大的问题,视频文件停止增长。

在这里插入图片描述
3、再次删除m3u8下的视频文件,发现磁盘正常有效,并没有删除无效的bug出现了~~
在这里插入图片描述

原因:
进程一直在运行。

找到问题了,那么就查看你的代码是否写入错误吧!

nodejs 合并代码可能写的有问题

1、再写切片合并时,确保写入流关闭,防止资源泄漏。
2、代码排查
在这里插入图片描述

当我测试打印,发现不会在最后一块出现false的数据。
在这里插入图片描述

;