当前位置:论坛首页 > Linux面板 > Linux面板教程

记一次ThinkPHP项目缓存过大导致面板无法打开的解决过程

发表在 Linux面板2021-2-24 18:40 [复制链接] 3 4642

起因:今天QQ用户私聊我说突然间面板打不开了,是什么问题?由于该用户直接贴图过来的,看到了他执行过bt 3 命令启动面板 0.1.png
让我疑惑的为何要reboot重启服务器?
看着截图进程在运行中,用户说发过帖子了,找到帖子,看来下是磁盘或者inode满了
1.png
随和用户聊天能否发服务器登录信息来,顺便完善下目前的教程贴的空白,待用户答应后,开干!
QQ图片20210111171725.jpg
处理过程:
查看磁盘和inode
df -h 查看磁盘使用信息
df -i  查看磁盘inode使用信息
2.png

发给用户一个查找inode信息的命令:
  1. for i in /www/*; do echo $i; find $i |wc -l|sort -nr; done
复制代码


mmm.png
看到/www/wwwroot/目录下面inode占用最多,再次递归查询
  1. for i in /www/wwwroot/*; do echo $i; find $i |wc -l|sort -nr; done
复制代码
4.png
定位到网站项目的位置了:
/www/wwwroot/项目名
再次递归
  1. for i in /www/wwwroot/项目名/*; do echo $i; find $i |wc -l|sort -nr; done
复制代码
解决:

最后定位到:
/www/wwwroot/项目名/runtime/cache
这是ThinkPHP类型项目的缓存路径
得到用户的同意后,删除这个目录下面的缓存文件

缓存文件.png

后面查询资料,是可以取消这个缓存或者使用Redis、Memcached缓存数据库进行缓存。
取消ThinkPHP的缓存
找到项目目录下  /system/thinkphp/convention.php这个文件,将缓存设置比较合理的时间:
缓存时间设置.png

如果有ThinkPHP大佬知道怎么设置合适的话,请在本帖下留言,您的善举是我们学习的源泉!
老天爷.gif








使用道具 举报 只看该作者 回复
发表于 2021-2-24 18:49:31 | 显示全部楼层
炮哥v587
使用道具 举报 回复
发表于 2021-6-8 10:45:06 | 显示全部楼层
最后定位到:
/www/wwwroot/项目名/runtime/cache
这是ThinkPHP类型项目的缓存路径
得到用户的同意后,删除这个目录下面的缓存文件

用什么指令
删除缓存的文件啊,
使用道具 举报 回复 支持 反对
发表于 2025-3-4 14:58:04 | 显示全部楼层
遇到同样的问题,这缓存直接消耗完了所有的inode就离谱,直接 rm -rf 删除,并设置缓存过期时间
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析
快速回复 返回顶部 返回列表