PHP使用sleep保存数据库过载

PHP使用sleep保存数据库过载,php,mysql,wordpress,Php,Mysql,Wordpress,我有一个WordPress插件,需要为每个帖子添加大量帖子和20个帖子元 它一直运行良好,直到POST计数变大(5000+),数据库开始出现故障,服务器关闭 我想知道,PHPsleep函数在这方面会有帮助吗?还是什么更好 我在想(假例子): 这个函数将在cron作业中运行,所以我认为使用sleep withignore\u user\u abort没有问题吧?这对我的MySQL有帮助吗?什么是重载?Web服务器还是MySQL服务器?有了睡眠,你会保持一个开放的连接。。。所以我不确定这是否会有那么

我有一个WordPress插件,需要为每个帖子添加大量帖子和20个帖子元

它一直运行良好,直到POST计数变大(5000+),数据库开始出现故障,服务器关闭

我想知道,PHP
sleep
函数在这方面会有帮助吗?还是什么更好

我在想(假例子):


这个函数将在cron作业中运行,所以我认为使用sleep with
ignore\u user\u abort
没有问题吧?这对我的MySQL有帮助吗?

什么是重载?Web服务器还是MySQL服务器?有了睡眠,你会保持一个开放的连接。。。所以我不确定这是否会有那么大的改善。您最好实现一个“偏移”功能,在这种情况下,您可以在x秒后用新的偏移刷新页面。这样,所有连接都会在x秒后被清除并重新启动。MySQL服务器是过载的服务器。是的,我想到了补偿的想法,但我认为对于cron来说睡眠会更容易。如果是MySQL服务器,那么它就不应该工作了。尽管我认为MySQL需要比3秒更多的时间才能回到正轨。但这取决于在“重函数”中运行的查询。你检查过MySQL慢速查询日志了吗?是的,但是我认为偏移方式使用起来更安全,你不觉得吗?是的,你可以手动设置偏移量,将其拆分为3到4个不同的cron作业。我认为cron作业对javascript重定向的响应不好;)。
$i = 0;
foreach ( $posts_to_insert as $post ) {
    if ( $i == 100 ) sleep(3);
     heavy_function();
    $i++;
}