我编写了一个网络聊天程序,它通过 ajax 命令刷新 a 来显示新条目。该命令启动了一个 php 文件,然后创建了显示最新 25 个条目的聊天日志。Ajax 每秒都会为每个用户刷新一次。
然后,当大约有 10 个用户在线时,整个网站变得异常缓慢,甚至崩溃了。我认为,缓慢来自于频繁刷新 php 脚本(每秒 > 10 次)。
我查看了我的虚拟服务器,启动了 htop 来查看进程。CPU几乎没有使用。它介于 0% 和最高 5% 之间。RAM 只使用了一半,大约 500 MB 的 1GB(这是标准的,甚至在聊天上线之前)。
我通过创建一个仅创建 1 个聊天日志的 html 缓存站点并将其提供给用户的 cron 作业解决了这个问题。
但是,我仍然想知道为什么服务器运行如此缓慢,即使 CPU 和 RAM 根本不忙?