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的数据。