Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Optymalizacja skryptu
Avertus
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 28.01.2014

Ostrzeżenie: (0%)
-----


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?
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




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
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




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).
Go to the top of the page
+Quote Post
Wazniak96
post
Post #4





Grupa: Zarejestrowani
Postów: 550
Pomógł: 75
Dołączył: 5.06.2012
Skąd: Lębork

Ostrzeżenie: (0%)
-----


Ja nie zauważyłem, żeby strona mi w jakiś sposób "muliła". Może to po prostu chwilowa zwiecha serwera (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
Avertus
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 28.01.2014

Ostrzeżenie: (0%)
-----


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 (IMG:style_emoticons/default/wink.gif)

Muli, muli. Strona ładuje się około 10 sekund u mnie.
Go to the top of the page
+Quote Post
phpion
post
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Za pomocą jQuery ogarniesz to bardzo szybko. Prosty przykład:
http://api.jquery.com/load/
Go to the top of the page
+Quote Post
Avertus
post
Post #7





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 28.01.2014

Ostrzeżenie: (0%)
-----


Zrozumiałem to tak, że te json_decody dać do innego pliku, a potem ten plik ładować do diva, dobrze?

Ten post edytował Avertus 30.01.2014, 14:48:10
Go to the top of the page
+Quote Post
Crozin
post
Post #8





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
Avertus
post
Post #9





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 28.01.2014

Ostrzeżenie: (0%)
-----


Dzięki chłopaki, zrobiłem to przez js i wszystko ładnie działa bez zamułek. Można usunąć czy tam zamknąć temat.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 01:58