LEN

/tmp 下产生大量 swoole.task 临时文件 磁盘空间打满问题
今天一台测试服务器 /tmp 下产生大量 swoole.task 临时文件 大概几十万个 将磁盘打满了 大概时间也...
扫描右侧二维码阅读全文
07
2019/05

/tmp 下产生大量 swoole.task 临时文件 磁盘空间打满问题

今天一台测试服务器 /tmp 下产生大量 swoole.task 临时文件 大概几十万个 将磁盘打满了 大概时间也就7天以内 , 这些文件什么鬼 ?? 是worker to task 的队列长度堵塞 生成的文件吗?

task.png

在测试服务器上, 有很多 swoole 服务程序, swoole.task 临时文件仍在增长, 所以我就依次kill 服务. 终于找到问题服务在哪里了
这个服务的 task进程 子进程 manager进程 都已经死掉了.

====================== 活着的进程 ================================
root      4651 11357  0 17:31 pts/0    00:00:00 Knock-swoole-main-master     
root      4741     1  0 17:31 pts/0    00:00:07 Knock-swoole-worker-0    

====================== 死掉的进程 ================================
root      4652  4651  0 17:31 pts/0    00:00:00 Knock-swoole-main-manager     
root      4694     1  0 17:31 pts/0    00:00:00 Knock-sws-swoole-fork-process 
root      4740     1  4 17:31 pts/0    00:01:50 Knock-swoole-task-0               

总结了下原因如下 :

swoole 起得多进程脚本 worker 投递任务给 task 进程
但 不知什么原因 manager 进程 死掉了 task 进程过期后没有重新拉起
worker 投递的数据超过8180字节 产生了临时文件 (文档)
而且因为投递的任务未执行导致worker 仍会重复投递 直至磁盘打满

当我想复现下问题, 但因为投递数据不超过 8180字节 所以在kill掉 上述进程后并没有临时文件产生.

最后修改:2019 年 05 月 07 日 06 : 39 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论