我正在创建一个项目,其中服务器从客户端接收操作以应用于本地服务器文档。服务器和客户端共享相同的文档,因此客户端发送的每条消息都包含一个MD5哈希值,服务器在生成自己的哈希值后对其进行比较,以确保服务器和客户端文档同步。
我的问题是,如果服务器过载,我可以在PHP中以某种方式检测到这一点,这反过来让我决定是否要执行哈希生成功能吗?
也许在定义的场景中,这不是一个完美的用例,但我对这种方法感兴趣。
答案 0 :(得分:3)
假设您使用的是Linux,则可以通过读取包含由空格分隔的3个数字的文件/proc/loadavg
来获取处理器负载平均值。您还可以从php uptime
调用exec('uptime')
命令并解析其输出,该输出还包含平均负载(以及其他内容)。
如何解释平均负载 - 我通常将1.0 * cores
作为最大健康负载。因此,如果你有4个内核,那么4.0以上的任何内容都表明处理器正在做一些繁重的计算并且更好等待。