PHP内置网络服务器运行速度很慢

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

我是 PHP 初学者,正在制作一个网站,在网页上显示 linux 系统的基本系统信息(CPU 使用率、内存使用率等)。对于 Web 服务器,我使用了内置的 Web 服务器:

php -S 192.168.1.36:8000

前端使用 Bootstrap 和 JS。我正在使用的 php 脚本使用服务器发送事件(从 here 了解它)大约每隔一次将 CPU 使用率、内存使用率和磁盘使用率(它从 shell_exec() 方法中获取)发送到前端2 秒。

问题是,网站刷新速度非常慢,偶尔,第一次加载也很慢。 当我查看 JS 控制台时,我注意到即使我按下了刷新按钮,服务器仍在将数据流式传输到网页。会不会是因为连接尚未关闭??

最佳答案

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

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

关于PHP内置网络服务器运行速度很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38289144/

相关文章:

php - 如何使用php在mysql数据库中存储两个复选框值

php - 在 MySQL 查询中传递变量

javascript - 样式复选框和ajax

php - 将文件加字符串从 android 上传到服务器不起作用

nginx - 在子域上使用具有不同根文件夹的多个位置配置 nginx

webserver - 调度程序和网络服务器有什么区别

javascript - HTML5 服务器发送事件 : technical details?

php - 我是否需要为每个查询实例化 Php 数据库类?

html - 服务器端的服务器发送事件成本

websocket - HTTP/2 世界中的 WebSockets 替代方案是什么?