Closed kandrzejczak closed 4 years ago
@wpawel jest lepiej ale nadal każdy request wordpress musi wykonać zapytanie do github które zajmuje 30-100ms więc często połowa czasu request to jest odpytanie github. Polecam dodaniem jakiegoś mechanizmu który będzie to sprawdzał co godzinę.
Dodatkowo CURLOPT_TIMEOUT
jest ustawiony na 1000 sekund więc jak padnie lub przymuli github to strony wszystkich klientów automatycznie przestają działać.
Ta linia jest wywoływana przy każdym request: https://github.com/dotpay/WooCommerce2/commit/26e08582d0bf95db2a0d61c6bfdedbcd50d661bf#diff-d93cd7945da849666f03d56eb2af3e49R124
Witam, Zacząłem analizować sklep pod kątem szybkości i okazało się że 15-50% czasu przetwarzania każdego requesta zajmuje wtyczka dotpay.
Request github [50-300ms] Przy każdym żądaniu wtyczka wysyła request do github aby sprawdzić jaka jest aktualna wersja wtyczki co zajmuje 50-300ms w zależności jak szybko w danym momencie działa github. Rozwiązanie: Polecam zapisywać dane z github do pliku lub do bazy danych wraz z informacją kiedy było ostatnie zapytanie i odpytywać github tylko kilka razy dziennie. Odpytanie pliku lub bazy będzie 1000x szybsze niż robienie zapytania za każdym razem.
3 x Request github [150-900ms]. Gdy wtyczka wykryje że wersja pluginu nie jest aktualna to wywołuje funkcję
noticeDotModule
w której funkcjagetLatestVersionDotpayModule
jest wykonywana 3 razy. Rozwiązanie: Polecam wywoływać tą funkcję raz i przypisać jej wynik do zmiennej.Wszyscy użytkownicy wtyczki będą na pewno bardzo wdzięczni za rozwiązanie tego problemu a dodatkowo zmniejszymy emisję CO2