![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 11.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Na potrzeby wykresu Highcharts napisałem skrypt PHP, który pobiera dane z bazy MySQL i koduje je do formatu JSON (3 serie danych). Skrypt działa poprawnie, ale czas jego wykonania i pobrania wyniku do przeglądarki jest bardzo długi ok. 10 sekund co stwarza problemy przy wywoływaniu go co 1 minutę wraz z innymi skryptami - zawieszenie przeglądarki po ok. 1 godzinie. W przykładzie poniżej ograniczyłem wynik do 5 minut, ale w rzeczywistości pobierane są dane z miesiąca (43 tys. rekordów). Proszę o radę w jaki sposób zoptymalizować ten skrypt? Oczekiwany format kodowania: Wynik działania skrypu Kod:
Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 11.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
1. Explain select czas_unix... i wklej tutaj wynik. 2. Co do tych pseudo benchmarków to zatrzymuj skrypt w określonych miejscach, np. po linii z mysql_query i zobacz, który fragment kodu zabiera najwiecej czasu. Czas wykonania zapytania w odniesieniu do pobrania wszystkich rekordów z bazy danych jest zależny od obciążenia serwera, ale nie dłuższy niż 2 sekundy (EXPLAIN). czas zapytania 1 czas zapytania 2 Nie wiem co począć z EXPLAIN: EXPLAIN Analizator EXPLAIN Zwolnienie może być na etapie selekcji rekordów do wyświetlenia. Sekcja kodu przygotowująca przedział czasowy do pobrania rekordów może być nieoptymalnie napisana (kod poniżej) Nie mam pomysłu jak to napisać wydajniej:
Dziękuję za pochylenie się nad tematem i pomoc. Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.10.2025 - 17:42 |