Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Optymalizacja skryptu
Forum PHP.pl > Forum > Przedszkole
Avertus
Witam, mam skrypt
Kod
<?php
    $gc = json_decode(file_get_contents("https://api.dailymotion.com/videos/?ids=xzmt6i&fields=title,genre,onair,tag,audience&limit=25"), true);
    $twitch = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/soushibo'), true);
    $twitchkasia = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/brunecia'), true);
    $twitchbrot = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/okaybrot'), true);
    $gcbrot = json_decode(file_get_contents("https://api.dailymotion.com/videos/?ids=xzmt6i&fields=title,genre,onair,tag,audience&limit=25"), true);
    $twitchbonkol = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/bonkol'), true);
    $twitchyooguruto = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/yooguruto'), true);
    $twitchzmiju = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/zmiju97'), true);
?>

odczytuję to tak:
Kod
<?php echo "".$twitch["stream"]["viewers"];
    if($twitch["stream"]["viewers"] == null)
    echo "OFF";?></font>
    <br>
(Dałem tylko 1 echo, żeby zobaczyć jak to wygląda. Odczytywanie reszty wygląda tak samo. Problem w tym, że strona muli. Można to zaobserwować tutaj:
Kod
http://monaris.blutu.pl/
. Jest jakaś możliwość optymalizacji tego? Czy przez jquery będzie to działać lepiej?
nospor
Do kodu PHP uzywa sie BBCODE PHP.

No nic dziwnego ze ci muli jak sprawdzasz po drodze petryliard stron. Zapisuj wynik do jakiegos cache. Przeciez nie ma sesnu sprawdzac tego za kazdym razem
phpion
Tak, jeśli puścisz to AJAXem jako osobne żądania dla każdego adresu to całość wczyta się szybciej. Użytkownik też będzie się mniej irytował gdy od razu zobaczy stronę, na której będą loadery, które po załadowaniu informacji i danym adresie zmienią się na odpowiedni komunikat (OFF / ON czy co tam masz).
Wazniak96
Ja nie zauważyłem, żeby strona mi w jakiś sposób "muliła". Może to po prostu chwilowa zwiecha serwera wink.gif
Avertus
Cytat(phpion @ 30.01.2014, 14:19:22 ) *
Tak, jeśli puścisz to AJAXem jako osobne żądania dla każdego adresu to całość wczyta się szybciej. Użytkownik też będzie się mniej irytował gdy od razu zobaczy stronę, na której będą loadery, które po załadowaniu informacji i danym adresie zmienią się na odpowiedni komunikat (OFF / ON czy co tam masz).

A mógłbyś podać jakiś link do tutoriala, ajaxa nie znam wcale, więc ciężko mi będzie ;/ Jeśli by nie było takiego tutoriala, to byłbym Ci bardzo wdzięczny, jeśli pokazałbyś mi jak to będzie wyglądać na 1 przykładzie.

Cytat(Wazniak96 @ 30.01.2014, 14:19:22 ) *
Ja nie zauważyłem, żeby strona mi w jakiś sposób "muliła". Może to po prostu chwilowa zwiecha serwera wink.gif

Muli, muli. Strona ładuje się około 10 sekund u mnie.
phpion
Za pomocą jQuery ogarniesz to bardzo szybko. Prosty przykład:
http://api.jquery.com/load/
Avertus
Zrozumiałem to tak, że te json_decody dać do innego pliku, a potem ten plik ładować do diva, dobrze?
Crozin
W tej chwili serwer pobiera po kolei dane każdego z serwerów. Przy pomocy cURL-a mógłbyś wykonywać wiele zapytań równolegle: http://stackoverflow.com/questions/2692704...eously-with-php Dzięki temu czas pobierania danych zmieni się z sumy czasów pobrania danych z każdego serwisu do mniej-więcej czasu najdłuższej, pojedynczej odpowiedzi.
Avertus
Dzięki chłopaki, zrobiłem to przez js i wszystko ładnie działa bez zamułek. Można usunąć czy tam zamknąć temat.
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.