有没有办法在 Symfony 上自动清除缓存?

Is there a way to clear the cache automatically on Symfony?

我正在开发“遗留”Symfony(它使用 Symfony 4 但不再维护)。问题是缓存文件夹每天都在增长,几个月后增加了50GB。

它是 运行 作为 DEV 环境,但由于原始开发人员离开了公司,我们只想“修补” [=] 后清理缓存的问题15=]X 时间,而不是将环境更改为生产环境(这可能会导致不同的问题,也许它不会解决缓存问题),就像 rotating Symfony logs 一样,您可以在其中配置 Symfony每天在不同的文件中记录并自动删除旧文件。

没有现成的方法可以在应用程序中执行此操作。

只是时不时地清除缓存。 (bin/console cache:clear)。您甚至可以将此作为 cron 作业安排到 运行 过夜,该过程通常最多只需要 couple/few 秒。

确保您 运行 使用与 运行 应用程序相同的用户的命令(例如 www-data,因为如果您 运行 命令作为 root 将使用错误的权限预热缓存)。

请注意,运行在开发模式下运行生产系统本质上是危险的,因为它更有可能在意外情况下泄露配置数据。