php – Ajax请求耗时太长

我问你,因为我没有任何想法……

我做了一个ajax请求,从服务器获取一个小数据. json的答案已经被服务器缓存了,所以速度非常快.

喜欢

window.xhr = $.ajax({
url: domain+'index.PHP?fx_action=ajax&fx_mode=continents&fx_type=countries&fx_ajaxid='+window.currentajaxrequest+'&fx_id='+window.id+'&fx_page='+(window.page-1)+'&fx_pager='+window.pager+'&fx_order='+window.order,
type: 'POST',
dataType: 'json',
timeout: 5000,
cache: false,
async: true,
beforeSend: function () {
        ...
    },
    error: function (xhr, ajaxOptions, thrownError) {
        return false;
    },
    success: function (data) {  
        ...

但是答案时间大规模滑动,有时需要1秒,有时只需67毫秒……

continents.js:65  http://teszt.domain.com/index.PHP?fx_action=ajax&fx_mode=continents&fx_type=countries&fx_ajaxid=0&fx_id=6&fx_page=1&fx_pager=9&fx_order=name
continents.js:100 start: 0
continents.js:101 beforesend: 9
continents.js:102 success: 5087
continents.js:103 complete: 5096
continents.js:65  http://teszt.domain.com/index.PHP?fx_action=ajax&fx_mode=continents&fx_type=countries&fx_ajaxid=1&fx_id=6&fx_page=2&fx_pager=9&fx_order=name
continents.js:100 start: 0
continents.js:101 beforesend: 9
continents.js:102 success: 70
continents.js:103 complete: 77
continents.js:65  http://teszt.domain.com/index.PHP?fx_action=ajax&fx_mode=continents&fx_type=countries&fx_ajaxid=2&fx_id=6&fx_page=3&fx_pager=9&fx_order=name
continents.js:100 start: 0
continents.js:101 beforesend: 11
continents.js:102 success: 301
continents.js:103 complete: 304

获得具有几乎相同大小(kbytes)的相同数据结构.一切都由服务器缓存.

在服务器端,PHP的运行时间总是大约30-40ms.我的错是什么?

解决方法:

除了服务器上网络速度和性能的高峰,您可能会遇到浏览器中相同主机名的2个活动连接的限制.几个问题:

>您是否有其他可以同时运行的请求?
>此脚本是否在页面启动时运行?如果是这样的话,它可能会与其他资源请求作斗争.

我建议你看看firebug中的网络面板,看看在你的请求发生时还有什么.

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...