Wolny panel administracyjny - gdzie szukać przyczyny
Publikacja: · Grzegorz Rapczyński
W PrestaShop to osobny problem od wolnego sklepu i ma osobne przyczyny. Sklep może ładować się w sekundę, a panel potrzebować dziesięciu - bo panel robi zupełnie co innego: liczy, zestawia, sprawdza aktualizacje i łączy się na zewnątrz.
Dobra wiadomość: to zwykle da się naprawić bez zmiany serwera, i to kilkoma ustawieniami.
Ustal najpierw, co konkretnie jest wolne
Rzadko wolny jest cały panel. Zwykle chodzi o konkretne ekrany, a to od razu wskazuje przyczynę:
| Co się wlecze | Najczęstsza przyczyna |
|---|---|
| Pulpit po zalogowaniu | Moduły statystyk liczące dane na żywo |
| Lista zamówień | Rozrośnięta baza i brak indeksów po latach |
| Lista produktów | Duży katalog z wieloma kombinacjami |
| Lista modułów | Sprawdzanie aktualizacji przez internet |
| Zapis czegokolwiek | Moduł wysyłający dane do systemu zewnętrznego |
| Wszystko równomiernie | Serwer albo baza danych |
Pulpit, czyli najczęstszy winowajca
Ekran powitalny panelu potrafi liczyć sprzedaż, najlepsze produkty, konwersję i kilkanaście innych rzeczy - za każdym razem od nowa, na całej historii sklepu. Po trzech latach działania to setki tysięcy rekordów przy każdym zalogowaniu.
Najprostsze rozwiązanie jest też najskuteczniejsze: wyłącz moduły statystyk, z których realnie nie korzystasz. Jeśli i tak patrzysz na dane w zewnętrznej analityce, panel nie musi ich liczyć drugi raz. Samo to potrafi skrócić ładowanie pulpitu z kilkunastu sekund do jednej.
Baza, która urosła
Sklep zbiera dane, których nigdy nie kasuje. Po kilku latach największe tabele to zwykle nie produkty ani zamówienia, tylko:
- porzucone koszyki wraz z ich zawartością,
- logi operacji zapisywane przy każdej zmianie w panelu,
- statystyki odwiedzin i powiązane z nimi rekordy gości,
- historia wyszukiwań w sklepie,
- wpisy modułów, które dawno zostały odinstalowane.
Te tabele obciążają każdą listę w panelu, bo przy wyświetlaniu zamówień czy klientów sklep i tak się do nich odwołuje. Czyszczenie starych danych daje zwykle najbardziej odczuwalny skok prędkości ze wszystkich możliwych zabiegów. Opisałem to osobno w tekście o tym, co czyścić, gdy baza sklepu rośnie.
Moduły wiszące na zewnętrznych usługach
Objaw, który łatwo rozpoznać: panel działa normalnie, ale jedna konkretna operacja trwa kilkanaście sekund - zwykle zapis zamówienia albo produktu. To znaczy, że w tle coś próbuje połączyć się z systemem zewnętrznym i czeka na odpowiedź.
Najczęściej chodzi o integrację z hurtownią, systemem magazynowym albo narzędziem do wysyłki. Gdy tamta strona nie odpowiada, sklep czeka do końca limitu połączenia - i dopiero wtedy kończy operację.
Rozwiązanie leży po stronie modułu: takie połączenia powinny mieć krótki limit czasu i działać w tle, a nie blokować pracę w panelu. Jeśli modułu nie da się poprawić, czasem lepiej przenieść synchronizację na zadanie uruchamiane cyklicznie.
Czego nie szukać
Dwie rzeczy, które w tym przypadku zwykle nic nie dają:
- Optymalizacja zdjęć i cache stron. To poprawia sklep dla klientów, nie panel. Panel prawie nie korzysta z tego samego mechanizmu.
- Zmiana hostingu jako pierwszy krok. Jeśli sklep dla klientów działa szybko, serwer raczej nie jest problemem. Warto zacząć od tego, co wolny panel robi inaczej niż szybki sklep.
Najczęstsze pytania
Czy wolny panel wpływa na pozycje w Google?
Nie. Google nie widzi panelu administracyjnego. Wpływa natomiast na Twój czas - a to też jest koszt, tylko liczony inaczej.
Czy można bezpiecznie wyłączyć moduły statystyk?
Tak. To moduły liczące dane do wykresów w panelu, nie mechanizmy sprzedaży. Historia zamówień zostaje nienaruszona.
Ile danych może mieć sklep, zanim panel zwolni?
To zależy bardziej od tego, jakie dane, niż ile. Dziesiątki tysięcy porzuconych koszyków spowalniają panel bardziej niż dziesiątki tysięcy produktów.
Praca w panelu zabiera pół dnia
Jeśli każda operacja trwa kilkanaście sekund, to policzalna strata czasu. Napisz - przejrzę statystyki, bazę i moduły, i powiem, co daje największy skok. Formularz kontaktowy, 881 932 088 lub kontakt@grvision.pl. To jeden z elementów opieki nad sklepem.