WordPress cron作业会减慢页面加载速度吗? 时间:2013-12-10 作者:urok93 如果用户访问一个站点,并且他的访问触发了一个非常密集的cron作业,那么页面加载速度对他来说会较慢,对吗?据我所知,页面在加载之前不会等待cron作业执行,但由于cron作业将并行运行,因此页面加载可能仍然会变慢,因为服务器很忙,对吗? 2 个回复 最合适的回答,由SO网友:Oleg Butuzov 整理而成 简短回答-Nope. 任何页面请求都会初始化计划队列。这只是一个初始化请求。Wp cron请求是一个独立的请求。so请求URL/somepage 您只需将请求初始化为/wp-cron.php然而,如果cron事件不能很好地工作(它有1000个db查询,例如,或者它请求了一个很长的响应资源),或者两者兼而有之,或者为每个请求重新调度cron事件。。。就像任何其他http请求一样,它会消耗资源、CPU性能、内存等。。。如果它占用了足够的资源,您的页面将变慢。 SO网友:Jake 简单的回答是yes, 在大多数情况下。首先,在大多数设置中,生成cron作业会导致页面加载延迟1秒,因为这是通过具有1秒超时的环回HTTP请求完成的-请参阅https://wordpress.org/support/topic/save-a-full-second-on-cron-execution/.其次,派生的作业现在将与数据库访问(以及其他资源)的页面负载竞争。多个进程可以同时读取数据库;但是,每当进程写入数据库时,默认情况下会锁定该进程,以防止任何其他进程同时进行写访问或读访问-请参阅https://stackoverflow.com/questions/1005206/does-sqlite-lock-the-database-file-on-reads#answer-1005218. 这一影响取决于cron作业的数据库更新有多复杂,以及数据库实际被锁定的时间有多长,可能无关紧要。当然,如果一个cron作业在请求页面时碰巧正在运行,这也是一个问题,但在页面加载时生成cron作业保证了它们至少会影响页面加载。如果您的服务器/主机允许,建议您使用以下命令设置计划的cron作业,使其每隔几个小时运行一次php -q /path/to/wp-cron.php 并使用中的以下条目禁用页面加载时的cron生成wp-config.php:define(\'DISABLE_WP_CRON\', true); 结束 文章导航