Laravel:5.5 Horizon:1.2.3 php:7.2 ubuntu:16.04,LAMP
我不知道这个问题是否与 Horizon 的 redis 服务器有关,但我确信这种情况会发生。使用数据库驱动程序时,/tmp 开始填充具有类似 php34gs1 phpwrd42 模式的 tmp php 文件,在处理队列后,/tmp 将被清理并恢复。
但是,当我使用带有 horizon 的 redis 驱动程序时,/tmp 目录将被填满,直到我的 60GB 服务器满了,我只能通过从 cli 手动删除它们或更糟的是重新启动服务器来解决这个问题。
使用 redis 驱动的磁盘使用情况:
数据库驱动程序的磁盘使用情况:
php 文件示例:
答案1
到现在为止,我仍无法解决这个问题,也不知道为什么会发生这种情况,但有一个解决方法,就是安装一个 cron 作业来清理/tmp
目录。
cron 作业将删除任何超过一天的文件,并将在每天午夜运行。
通过运行crontab -e
并粘贴以下内容:
0 0 * * * sudo find /tmp -type f -atime +1 -delete