You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

资源密集型PHP脚本出现No space left on device (28)错误求助

问题:PHP脚本循环调用子脚本触发"No space left on device (28)"错误

我有两个PHP脚本,父脚本包含1000000次循环,每次循环通过shell_exec()调用子脚本。子脚本每次调用时向MySQL表插入10000条数据,输出响应后退出,父脚本利用该响应执行后续操作。

脚本已设置为无内存限制和无执行时间限制,多数情况下运行正常,但一段时间后会出现**"No space left on device (28)"**错误。通过phpMyAdmin监控发现:

  • 16GB内存中,程序持续占用7GB,缓存内存约6.7GB,空闲内存约160MB;
  • CPU使用率稳定在20%左右,连接/进程状态均正常;
  • 操作开始前,MySQL表预估约15GB,磁盘剩余空间40GB。

父脚本示例代码

<?php
    //parent script
    error_reporting(E_ALL);
    ini_set('max_execution_time', 0);
    ini_set('memory_limit', -1);
    ini_set('max_input_vars', 10000);
    include 'db-connection-script.php';

    for($i =0; $i<1000000; $i++){
        //restart script starting
        $mySqlTableNameEscaped=escapeshellarg($mySqlTableName);

        $cmd = "/usr/bin/php child-script.php $mySqlTableNameEscaped";
        $result = shell_exec($cmd);
        unset($mySqlTableNameEscaped);

        //response taken here
        $resultArray = json_decode($result, true);
        if($resultArray['status'] == "success"){
            $returnArrayFromChildScript = $resultArray['returnArrayFromChildScript'];
            //furthur operations ......
            //......
            //......
        }
        unset($resultArray);
    }
    exit;
?>

子脚本示例代码

<?php
    //child script
    error_reporting(E_ALL);
    ini_set('max_execution_time', 0);
    ini_set('memory_limit', -1);
    ini_set('max_input_vars', 10000);
    include 'db-connection-script.php';

    $status = "";
    $returnArrayFromChildScript = array();
    $mySqlTableName = (isset($_SERVER['argv'][1]) AND $_SERVER['argv'][1] != "") ? $_SERVER['argv'][1] : "";

    //mysql operation for selection and insertion of 1000 rows in mySqlTableName sql table is done here.
    //******/
    //******/
    //******/
    //returnArrayFromChildScript[] array is prepared here

    $status = "success";
    echo json_encode( array( 'status' => $status,'returnArrayFromChildScript'=>$returnArrayFromChildScript) ); 
    exit;
?>

内容的提问来源于stack exchange,提问作者Paarth Pratim Mout

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 03:33:26