龐大的延遲我嘗試着做一些簡單的Ajax調用與此代碼段的網頁內容更新:在第二jQuery的Ajax請求
$("a.ajaxify-watched").bind("click", function(event) {
$item = $(this);
$.ajax({
url: $(this).attr("href"),
global: false,
type: "GET",
data: ({
callback : "inline"
}),
dataType: "json",
async:false,
success: function(msg){
if (msg.status == 200) {
toggleStatus($item, msg)
}
}
});
return false;
});
這完美的作品對我來說那裏有沒有什麼好擔心的代碼,但速度被執行。
第一次一切正常工作:操作47毫秒。但在此之後,其他所有Ajax調用都會持續2.6秒 - 每次。我檢查了Firebug,發現它顯示爲「等待時間」。
我真的不能說這裏發生了什麼。 我們最近從純Apache2切換到Nginx緩存反向代理,並使用Apache作爲後端Php解釋器進行負載平衡。我們可以看到巨大的性能提升,一切工作都很順利。我不知道我的問題何時首次出現,以及它是否確實與我們的新服務器設置有關。
我今天才發現,jQuery有問題,所以我只是想給儘可能多的信息。
謝謝,讓我知道我是否應該提供更多信息。
您可能需要同步答案,但是您是否嘗試過沒有「async:false」的腳本? – gabel 2011-01-12 10:47:00
[AJAX](http://en.wikipedia.org/wiki/Ajax_(編程))表示**異步** JavaScript和XML。就像現在一樣,當`.ajax()`是_on_時,整個頁面被阻塞。 – Shikiryu 2011-01-12 10:53:21