PHP内置的Web服务器运行速度很慢

时间:2016-07-10 06:09:16

标签: php webserver server-sent-events shell-exec

我是PHP的初学者,并创建一个网站,在网页上显示Linux系统的基本系统信息(CPU使用率,内存使用情况等)。对于Web服务器,我使用了内置的Web服务器:

//Using es6 syntax
this.getData() {
    return $http.get('/api/')
        .then(({data}) => data)
        .catch(({data}) => console.log('FAILED: ', data.message));
}

//es5
this.getData() {
    return $http.get('/api/')
        .then(function(res) {
          return res.data
        })
        .catch(function(res) {
           console.log('FAILED: ', res.data.message));
        });
}

前端使用Bootstrap和JS。我使用的php脚本使用Server-Sent Events(从here了解到它)将CPU使用率,内存使用量和磁盘使用量(它从shell_exec()方法中获取)发送到前端 - 大约每2秒结束一次。

问题是,网站刷新速度非常慢,有时第一次加载速度非常慢。 当我查看JS控制台时,我注意到即使按下刷新按钮后服务器也将数据流传输到网页。这是因为连接还没有关闭?

1 个答案:

答案 0 :(得分:2)

PHP的内置Web服务器供开发使用。它是单线程的,当您使用它时,只需花费数百倍的时间即可初始化传入的请求。而且大多数情况下,您不仅没有一个请求,而且还请求js,css和图像。因此,加载整个页面可能需要花费几秒钟的时间。仍然没有实现它。

对于简单的测试或较短的开发周期,可以使用它,但是对于密集开发,我总是更喜欢并推荐一个真正的Web服务器。