Php 如何一次向服务器发送多个请求

Php 如何一次向服务器发送多个请求,php,ajax,Php,Ajax,情况: 我得到的页面显示了我们所有的服务器(我们称它们为资源)。该列表从MS SQL数据库中获取。 为了显示它们,我从数组和echo中提取它们。在echo之后-我向每个资源发送请求以获取其状态(200、404、502等) 问题: 当有10-20个资源时,页面会在几秒钟内加载,但现在几乎有100个资源(而且还会更多),因此页面会在1分钟内加载。现在我的经理说我们需要每1分钟检查一次状态 所以,我的问题是-我如何才能做到这一点?一般来说,我可以吗?:) 我不需要代码或工作解决方案,我需要一些指导,我

情况:

我得到的页面显示了我们所有的服务器(我们称它们为资源)。该列表从MS SQL数据库中获取。 为了显示它们,我从数组和echo中提取它们。在echo之后-我向每个资源发送请求以获取其状态(200、404、502等)

问题:

当有10-20个资源时,页面会在几秒钟内加载,但现在几乎有100个资源(而且还会更多),因此页面会在1分钟内加载。现在我的经理说我们需要每1分钟检查一次状态

所以,我的问题是-我如何才能做到这一点?一般来说,我可以吗?:)

我不需要代码或工作解决方案,我需要一些指导,我如何才能做到这一点?搜索什么?读什么?也许有一个解决方案,其中包含一些库,甚至一些框架,可以更好、更简单地实现这一点

我已经阅读了一些关于这方面的文章和问题:

我认为我需要学习AJAX并使用它。但我找到的任何指导都是:实时搜索、从输入中动态选择内容、在字段中键入时的建议等等

在我看来,一定有一个页面像我现在拥有的
servers.php
,当我加载它时,它会获取并显示所有服务器。然后它为每个资源调用
check_status.php
,动态更新数据,然后每1分钟重新加载一次页面。但我不知道如何一次向所有服务器发送那么多(~100)个请求

编辑


我们做到了这一点:我们将运行LinuxVM并运行cron作业,以保持对资源状态的更新。用Ajax检查状态的脚本编写起来很简单,这是我没有预料到的。为了存储日志,我们将使用MySQL数据库,并将编写简单的页面来处理日志。感谢大家参与回答和评论

我建议使用或之类的工具


还有很多解决方案,而实现自己的脚本是浪费时间和资源的

我建议使用或之类的工具


还有很多解决方案,而实现自己的脚本是浪费时间和资源的

我建议您通过cron运行此检查,并将状态存储在mysql表中。您可以将cron设置为每分钟运行一次。每次检查后更新状态。在用户端,只需从MySQL数据库获取服务器的状态。通过这种方式,您可以解决任何超时问题,还可以从数据库中快速获取服务器的状态。

我建议您通过cron运行此检查,并将状态存储在mysql表中。您可以将cron设置为每分钟运行一次。每次检查后更新状态。在用户端,只需从MySQL数据库获取服务器的状态。这样,您就可以解决任何超时问题,并且能够从数据库中快速获取服务器的状态。

最简单的方法是使用cron运行更新状态作业,并将结果存储在本地文件或数据库中的某个位置


然后您只需要获取结果并将其显示给客户端。

最简单的方法是使用cron运行更新状态作业,并将结果存储在本地文件或数据库中的某个位置


然后,您只需要获取结果并将其显示给客户端。

当然,您可以通过异步调用来实现这一点(因此可以并行地同时执行所有请求)。然而,有一个提示:对于这一点,存在着现有的、经过充分验证的解决方案,这就是所谓的“系统监控”。流行的选择是
zabbix
nagios
。看看它们,可以省去很多麻烦……您可以通过生成单独的异步请求来实现,但在任何情况下,资源都不是无限的,对于网络也是如此。总是有限制的。编写函数向服务器发送请求(包括ajax调用),并使用javascript轮询每分钟一次。看@arkascha谢谢,谢谢你的建议,我听说了zabbix,但正如你所见,我从未使用过它:)我会看一看。@ArtisticPhoenix谢谢,这项任务的资源确实有限。。。这就是为什么我期待着使用一些专门为这种监视而设计的工具。当然,您可以通过异步调用来实现这一点(因此可以并行地同时执行所有请求)。然而,有一个提示:对于这一点,存在着现有的、经过充分验证的解决方案,这就是所谓的“系统监控”。流行的选择是
zabbix
nagios
。看看它们,可以省去很多麻烦……您可以通过生成单独的异步请求来实现,但在任何情况下,资源都不是无限的,对于网络也是如此。总是有限制的。编写函数向服务器发送请求(包括ajax调用),并使用javascript轮询每分钟一次。看@arkascha谢谢,谢谢你的建议,我听说了zabbix,但正如你所见,我从未使用过它:)我会看一看。@ArtisticPhoenix谢谢,这项任务的资源确实有限。。。这就是为什么我期待使用一些专门为此监视而设计的工具。感谢您的输入,我不熟悉cron(听说过,但从未使用过),我将检查它是否对我的任务有用。@gofr1您必须检查并使用cron来执行此类任务,因为这将使您的脚本自动化。感谢您的输入,我不熟悉cron(听说过,但从未使用过)我将检查它是否对我的任务有用。@gofr1您必须检查并使用cron来执行类似的任务,因为这将使您的脚本自动化。感谢您的回答,从一个方面来说,这确实是浪费资源,但自己做这件事非常有趣,另一方面,使用您建议的解决方案和工具将更好地完成这项工作。我将看一看关于你建议的链接和工具。谢谢你的回答,一方面这确实是浪费资源,但我自己做很有意思,另一方面像你建议的那样使用解决方案和工具也可以