php耗时的脚本 - 普通的POST或多个AJAX请求?

时间:2012-05-22 11:09:10

标签: php ajax time consuming

我打算给你一个系统的摘要。它有订单,每个订单都需要由外部API处理。通常,一次需要处理大约100 200个订单,因此这将是一项耗时的任务。目前我使用正常的帖子请求,传递了订单ID,并且我在某种程度上增加了PHP资源。

主要关注点:不知道由于某种原因脚本是否耗尽了所有资源并停止了。这是非常不受欢迎的,因为它可能在执行期间的任何时候停止,另一件事是我不想分配太多资源,因为我知道这也是一个坏主意。

所以我想知道我是否为每个订单使用多个AJAX请求,实际上这不会更好吗?由于每次都要发出请求并实例化对象和内容,因此总体上需要花费更多时间。但我将非常确定分配的资源不会用完,脚本将成功完成。它还使我有可能以交互方式告知用户已处理了多少订单。

欢迎有经验的用户提供任何反馈。

2 个答案:

答案 0 :(得分:1)

如果您运行多个AJAX请求,它们将并行运行,因此花费的时间更少,但资源更多。

在我看来,你应该使用AJAX,因为正如你所说,你可以告诉用户这些过程,最好这样做,然后让用户不知道发生了什么。

如果你在一个页面上并且在处理过程中它冻结了30秒,你就不知道脚本是否已经崩溃或者其他什么,但是如果它是60秒而是通知你进度,你会更多倾向于等待它完成。

您还可以在添加订单时对其进行预处理,然后在订单完成时完成处理(取决于您的订单处理机制)

答案 1 :(得分:1)

能够处理> 1个订单的ajax调用可能会更好,但不知道 无论如何你的系统的细节。 连续的ajax调用也是(服务器)资源。