So habe ich eine Webanwendung, die rund 14-15 AJAX Aufrufe an einige APIs macht. Das Problem ist, dass die Zeit, die alle AJAX-Aufrufe brauchen, fast dreimal so lang ist wie die Zeit, in der jede einzelne API mir Antwort anzeigt, wenn ich ihre URL in den Browser eintippe.Schnelle Möglichkeit, mehrere AJAX-Anrufe zu tätigen
Ich mache alle AJAX-Anrufe sofort im DOM-Ready-Event.
Die Sache ist, wie ich diesen Prozess beschleunigen kann, 15 AJAX-Anrufe zusammen zu machen, die Antwort so schnell wie möglich zu erhalten und das DOM entsprechend zu manipulieren.
paar Punkte, die ich in meinem Kopf haben:
- die AJAX Alle Anrufe sollten ASYNC Natur sein. (Schon tun es).
- Machen Sie nicht alle AJAX-Anrufe gleichzeitig. Erzwingen Sie eine Art Timeout, da alle AJAX-Aufrufe gleichzeitig die Bandbreite blockieren und die Verarbeitungszeit verlangsamen können.
- Reduzieren Sie die Anzahl der API-Aufrufe mit allen Mitteln. (Schon tun es).
- Manipulieren Sie das DOM so minimal wie möglich. (Schon tun es).
- Einstellung
cache:true
im AJAX-Setup. Ich denke nicht, dass das wirklich helfen wird, immer noch mache ich es, wo ich sicher bin, dass der Inhalt wirklich langsam aktualisiert wird.
Alle Vorschläge werden wertvoll sein! Vielen Dank.
Die Art, wie ich AJAX mache ruft
$(document).ready(function(){
loadSentimentModule();
loadCountModule();
loadEntitiesModule();
// Some more function calls.
});
function loadSentimentModule(){
$.ajax({
url:someurl,
cache:true,
dataType:"json",
success: function(data){
// Based on data manipulating DOM.
}
}
// Same kind of function defintions for all the functions.
Zeigen Sie Ihren Weg, um mehr Ajax Anfragen zu tun .. –
@ user1354678 eingegeben Bitte überprüfen – void
'Reduzieren Sie die Anzahl der API-Aufrufe auf jeden Fall. Sicher, das ist, wo Sie anfangen sollten. Wenn Sie alle Daten nur durch eine Ajax-Anfrage verarbeiten können, sind Sie ein Gewinner :) –