Wolny sklep na WooCommerce lub Magento? Sprawdzę, co go hamuje.
Przeglądam serwer i sklep na Magento albo WooCommerce, na dowolnym hostingu, nie tylko na AWS. Dostajesz listę zmian i przy każdej to, czego się po niej spodziewać. Na start wystarczy adres sklepu i kilka zdań o tym, kiedy zwalnia. O dostęp do panelu hostingu albo serwera poproszę dopiero po ustaleniu ceny.
Albo napisz na przemek@codelevel.pl.
Odpowiadam w ciągu 1 dnia roboczego.
Kiedy to ma sens
- Sklep działa w dzień, a zwalnia wieczorem albo pada w czasie promocji lub kampanii reklamowej.
- Programista mówi, że to wina hostingu, a hosting, że sklepu. Sprawdzam jedno i drugie i pokazuję, co naprawdę hamuje.
- Hosting proponuje tylko droższy pakiet, a nikt nie sprawdził, co zużywa zasoby.
- Koszyk, wyszukiwarka albo panel administracyjny są wyraźnie wolniejsze niż strona główna.
- Po aktualizacji albo nowej wtyczce lub module sklep zwolnił i nie wiadomo, co się zmieniło.
Co sprawdzam
W skrócie: sprawdzam, czy serwerowi nie brakuje mocy albo pamięci w szczycie, czy baza danych nie jest zapchana, czy gotowe strony trafiają do cache, zamiast być generowane od nowa przy każdym wejściu i czy coś w tle nie zjada zasobów akurat wtedy, gdy przychodzą klienci. Szczegóły dla Twojego programisty:
- PHP-FPM i OPcache. Liczbę procesów względem pamięci serwera i to, czy OPcache ma dość miejsca, żeby kod nie był kompilowany przy każdym wejściu.
- Bazę danych i wolne zapytania. Konfigurację MySQL albo MariaDB, log wolnych zapytań, brakujące indeksy i tabele, które puchną od logów, sesji i zadań w tle, a w WooCommerce także HPOS i opcje ładowane przy każdym wejściu (autoload w
wp_options). - Cache: Redis, Valkey, Varnish. Gdzie trzymane są sesje i cache aplikacji, i czy Varnish ma sens przy Twoim ruchu.
- Cache całych stron (full-page cache). Czy strony produktów i kategorii w ogóle do niego trafiają i co go co chwilę czyści.
- CDN i obrazy. Rozmiar i format zdjęć, nagłówki cache plików statycznych i to, czy CDN faktycznie odciąża serwer.
- Cron i indeksery. Reindeksację w Magento, WP-Cron i Action Scheduler w WooCommerce, czyli zadania, które potrafią zająć serwer akurat wtedy, gdy są klienci.
- Wtyczki i moduły. Które z nich najbardziej obciążają serwer przy każdym wejściu i czy da się je ustawić lżej albo zastąpić.
- Limity hostingu. CPU, pamięć, liczbę procesów i operacje na dysku. Często sklep w szczycie wyczerpuje limit hostingu, choć moc serwera jeszcze wystarcza.
- Ruch botów. Ile zapytań to crawlery i scrapery, które chodzą po filtrach kategorii. Każda kombinacja filtrów to nowy adres, którego cache nie ma, więc serwer liczy go od zera.
Przed zmianami i po nich mierzę czas odpowiedzi serwera na stronie głównej, kategorii, produktu i w koszyku, więc efekt widać w liczbach.
Co dostajesz
Raport z listą zmian, które mają przyspieszyć sklep, ułożoną od tych, które dają najwięcej przy najmniejszym ryzyku. Przy każdej piszę, czego się po niej spodziewać, na przykład krótszej odpowiedzi serwera na stronach kategorii albo mniejszej liczby błędów 502 w szczycie, i czy da się ją zrobić na obecnym hostingu.
Jeśli obecny hosting nie wystarczy, piszę, jaki serwer jest potrzebny i ile kosztuje miesięcznie, zanim cokolwiek przeniesiesz. Zmiany mogę wdrożyć sam albo przekazać je Twojemu programiście lub firmie hostingowej. Serwerem mogę też potem zająć się na stałe, w ramach utrzymania.
Dostęp do sklepu i dane klientów
- Pracuję na osobnym, imiennym koncie w panelu hostingu albo na serwerze, nie na Twoim haśle. Po zakończeniu prac usuwasz je jednym kliknięciem.
- W bazie sklepu są dane Twoich klientów, więc przed startem podpisujemy umowę powierzenia przetwarzania danych (art. 28 RODO). Na Twoją prośbę także NDA.
- Zanim cokolwiek zmienię, robię kopię i uzgadniam z Tobą termin poza godzinami szczytu i promocjami.
- Zmiany po przeglądzie wprowadzam dopiero po Twojej zgodzie, według stawki godzinowej, albo wprowadza je Twój programista.
- Nie przeglądam zamówień ani danych klientów. Interesuje mnie, co obciąża serwer, a nie kto co kupił.
Więcej o tym, jak pracuję i jak dbam o dostęp.
Przykład
Sklep na Magento przeniosłem z hostingu współdzielonego na AWS bez przestoju. Strony ładują się około 3× szybciej: doszły Varnish jako cache całych stron, Redis, osobna baza, wyszukiwarka i CDN. Celem była skalowalność i odporność na awarie, więc rachunek za hosting wzrósł. Nie każdy sklep potrzebuje takiej przeprowadzki; często wystarczą zmiany na obecnym serwerze. Cała historia.
Następny krok
Napisz, na czym działa sklep (Magento czy WooCommerce, jaki hosting) i kiedy zwalnia. Odpowiem, czy przegląd ma sens i ile będzie kosztował; stałą kwotę dostajesz na piśmie przed startem. Jeśli problem wygląda na drobny, powiem to od razu. Cena przeglądu jest w cenniku.
Sklep nie działa teraz? Napisz z tematem PILNE. Pomoc przy awarii kosztuje 350 zł/h w dni robocze i 450 zł/h wieczorem do 22:00 i w weekendy, minimum 2 godziny.
Opisz swoją sytuację w kilku zdaniach
Odpiszę z pytaniami albo od razu z propozycją i ceną.
Albo napisz na przemek@codelevel.pl.
Odpowiadam w ciągu 1 dnia roboczego.