Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX] Wczytanie wielu URL jeden po drugim
Forum PHP.pl > Forum > Przedszkole
SmokAnalog
Witajcie,

mam pytanie natury optymalizacyjnej. Załóżmy, że mam do odwiedzenia 10 zewnętrznych adresów URL i używam w tym celu Ajaxa. W Tej chwili robię to tak, że każde kolejne żądanie jest wysyłane dopiero wtedy, gdy poprzednie zakończy się sukcesem. Kolejność tych pobieranych danych jest ważna, więc dzięki temu ją zachowuję. Zastanawiam się jednak czy nie lepiej po prostu wysłać 10 żądań jednocześnie i posortować dane jak już wszystko się pobierze? Czy prędkość załadowania wszystkich URL-i wzrośnie znacząco?
by_ikar
Nie wiem czy coś w tej kwestii się zmieniło, ale przeglądarki mają coś takiego jak limit żądań w jednym czasie do jednego hosta. I chyba to było 3 lub 5. Wiem że to też również zależało od przeglądarki. Jeżeli to są różne hosty - ładuj wszystko jednocześnie. Jeżeli jeden, to i tak kolejka utworzy się przez samą przeglądarkę. No ale też jest kwestia co ty tam wczytujesz wink.gif
in5ane
Wiadomo, że jak lecisz synchronicznie to każde zapytanie blokuje Ci następne i to może spowolnić kolejne, bo np. dane zapytanie będzie długo oczekiwać na odpowiedź serwera. Np. jQuery.ajax właśnie działa asynchronicznie, więc zapytania lęcą na raz, ale można ustawić by działało to synchronicznie.
SmokAnalog
Cytat(in5ane @ 23.07.2014, 14:44:42 ) *
Wiadomo, że jak lecisz synchronicznie to każde zapytanie blokuje Ci następne i to może spowolnić kolejne, bo np. dane zapytanie będzie długo oczekiwać na odpowiedź serwera. Np. jQuery.ajax właśnie działa asynchronicznie, więc zapytania lęcą na raz, ale można ustawić by działało to synchronicznie.

Wiem o tym, ale nie widzę związku. W moim przypadku i tak nic nie mogę pokazać zanim się nie załadują wszystkie URL-e. Synchroniczne wysyłanie żądań odnosi się nie tylko do blokowania kolejnych żądań, ale do blokowania wszystkich akcji JavaScriptu. Ja nawet w obecnej metodzie nie używam synchronicznych żądań - kolejne żądania są wysyłane w funkcji zwrotnej poprzedniego. Chyba po prostu porobię testy smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.