我最近注意到,在出现性能错误和失败后,单个请求所消耗的内存(前面或后面)迅速增加。经过数小时的实验和研究,我注意到“cron”行的option\\u值记录是7MB!!!!包含一个带有“重新调度”操作循环的巨大json。
这看起来像是一次袭击,准备再次看到吗?如何保护我的站点不受这些cron值的影响?
我最近注意到,在出现性能错误和失败后,单个请求所消耗的内存(前面或后面)迅速增加。经过数小时的实验和研究,我注意到“cron”行的option\\u值记录是7MB!!!!包含一个带有“重新调度”操作循环的巨大json。
这看起来像是一次袭击,准备再次看到吗?如何保护我的站点不受这些cron值的影响?
这可能是由于许多不同的原因造成的,也可能是由于cron设置被破坏的结果,其中的操作正在计划中,但从未运行过。
最好的方法是尝试并了解实际计划或重新计划的内容,操作名称是什么?如果你能找到动作名称,你就可以将其精确定位到特定的插件或主题(或核心)。
如果您有可用的WP-CLI,则可以运行:
wp cron event list
虽然有7mb的cron数据,但这可能需要一段时间,所以要有耐心。确定操作名称后,可以通过以下操作将其全部删除:wp cron event delete <action_name>
如果您没有WP-CLI访问权限,可以尝试直接在数据库(通过phpMyAdmin或MySQL CLI)或数据库导出中检查选项值。sql文件。我不建议像其他人在这里建议的那样禁用WordPress cron,因为这不会阻止新操作排队,也会破坏整个站点依赖于cron的功能,包括定时发布、更新检查等。
希望这有帮助。
您可能遇到WordPress 4.3引入的一个bug,涉及术语拆分。
此处提供了一个修补程序插件:https://wordpress.org/plugins/wp33423-hotfix/
为什么不禁用wp-cron.php 文件只需将此代码粘贴到wp-config.php 禁用cron文件后,没有计划任务工作。
define(\'DISABLE_WP_CRON\', true);
如果我从配置中禁用wp cron,自动更新是否仍然有效?在我的一个站点中,我需要禁用wp cron,因为它会导致高CPU使用率,但我当然不想禁用自动更新。任何建议(例如使用crontab/cronjob)都将得到采纳。