Codeigniter控制器执行时间非常慢

时间:2019-03-06 07:06:15

标签: php codeigniter exec

有人可以帮助我解决这种情况吗?当我使用辅助方法运行Controller / View时,输出时间确实很慢:

BENCHMARKS   
Loading Time: Base Classes      0.0320 
Controller Execution Time ( EquipUser / Detalii )   3.3030 
Total Execution Time    3.3350

我的控制器如下:

public function detalii($service_tag){
    // 1. Incarcare elementele necesare in pagina
        $this->load->library('javascript');
        $this->load->library('javascript/jquery');
        $this->output->enable_profiler(TRUE);
    //2. Definere campuri pentru incarcare in view
        $data['titlu_pagina'] = $service_tag . " "; 
        $data['service_tag'] = $service_tag;
        $data['echipamente'] = $this->Echipament->get_by_service_tag($service_tag);
    //3. Incarcare view principal
        $this->load->view('detalii', $data);
    }

查看区域:

<section id="diverse" class="col-12 col-md-6">
    <script type="text/javascript">
        $(function () {
            $('#ping').click(function () {
                var result="<?php echo doPing($echipament->hostname); ?>";
                alert(result);
                return false;
            });
        });
    </script>
<a class="btn btn-toolbar" id="ping" onclick="ping()">Ping</a>
</section>

和辅助功能:

function pingExec_dr($host){
    exec(sprintf('ping -w 1 %s', escapeshellarg($host)), $res, $rval);
    return $rval === 0;
}

function doPing($host){
    $up = pingExec_dr($host);

    if($up){
        $result = "<div class='alert alert-success' role='alert'>";
        $result .= $host . " ONLINE";
        $result .= "</div>";        
    } else {
        $result = "<div class='alert alert-danger' role='alert'>";
        $result .= $host . " OFFLINE";
        $result .= "</div>";
    }

    return $result;
}

我也尝试了来自[GitHub-Ping-geerlingguy] [1]的PING类   [1]:https://github.com/geerlingguy/Ping和我有相同的超时时间,但延迟为1毫秒。 我已经用相同的结果测试了jQuery外部方法的调用。 我在其他测试项目(未使用CI)中尝试了ping方法/类,并且没有延迟。

请帮助我。 谢谢。

0 个答案:

没有答案
相关问题