12

同步请求和异步请求之间的性能(速度方面)是否有任何差异?

使用异步请求的所有原因是什么?

4

3 回答 3

23

您应该始终使用异步 Ajax 请求,实际上我只知道应该使用同步 Ajax 请求的一个地方,即如果您在 Ajax 请求中在客户端上嵌入新的 JavaScript 文件,然后引用类型和/或来自原始 Ajax 请求返回的该 JavaScript 文件中的对象。然后应该(或者可以明智地)通过使用同步 Ajax 请求来获取这个新的 JS 文件......

除此之外,您应该始终使用异步 Ajax 请求。最重要的原因是同步的 Ajax 请求使 UI(浏览器)无响应......

于 2009-06-27T09:14:14.330 回答
1

@Thomas Hansen 的回答是正确的,但我找到了一个明确的解释,它的好处是Asynchronous.

同步很简单,但是要等待服务器响应,因此在处理请求时会阻塞调用者的执行一段时间并且比异步慢。

异步是必需设置,提交请求后不等待,立即将控制权返回给调用者,因此比同步更快。

当我必须使用上传控件时,我来到这里,该控件具有问题中的功能并查看此功能的优缺点。

我得到了另一个链接,它用一个真实的例子来解释。(链接是具体的工具,所以理解逻辑)

  • 主要区别在于我们服务器的响应时间。在上传时,同步将实时验证文件并创建密码。异步将文件发送到我们服务器的队列,并在处理完成后通过电子邮件发送通知。

  • 同步对于多个大型 CSV 文件并不理想,因为您需要等到文件被服务器处理后才能提交另一个请求。在大文件上,这也可能导致您的浏览器由于服务器太忙而返回超时错误。如果您有多个文件,异步将允许您将多个文件提交到服务器队列,以便在完成后使用电子邮件收据进行处理。

https://www.aspsnippets.com/Articles/Difference-between-Synchronous-Sync-and-Asynchronous-Async-Request-Call-in-AJAX.aspx

于 2018-10-05T13:43:38.990 回答
-1

当涉及到高度数据库密集型应用程序时,可能会导致严重的性能影响.. 虽然这不太可能发生.. 并且发送许多同步 ajax 调用可能会产生积压.. 所以如果应用程序数据库密集型并一次发送如此多的请求最好让它异步。当它设置为异步时,浏览器将失败所有无响应的请求并继续新的一次..

于 2014-02-19T02:08:55.493 回答