Przejdź do treści
logo logo

Co zrobić, gdy integracja PrestaShop z ERP zaczyna się sypać przy większym obciążeniu?

Zacznij od diagnozy, nie od przebudowy. W integracjach, które działają na małym ruchu, a sypią się przy dużym, przyczyna prawie zawsze mieści się w jednym z czterech miejsc: pełna synchronizacja uruchamiana w godzinach sprzedaży, wywołania ERP w krytycznej ścieżce zakupowej, brak limitów czasu na zewnętrzne API oraz zapytania do bazy bez indeksów na tabelach synchronizacji.

Kolejność działań, która daje efekt najszybciej:
  1. 1. Znajdź wąskie gardło pomiarem, nie intuicją. Zbierz logi błędów, czasy odpowiedzi ERP i wolne zapytania bazy z okresu awarii. Metodę opisujemy w tekście o audycie i diagnostyce PrestaShop.
  2. 2. Przenieś ciężkie operacje poza godziny szczytu i zamień pełne synchronizacje na przyrostowe. To zwykle najtańsza zmiana z największym efektem.
  3. 3. Wyjmij ERP z krytycznej ścieżki. Zamówienie ma zostać przyjęte nawet wtedy, gdy ERP nie odpowiada; przekazanie realizuje proces w tle.
  4. 4. Dodaj limity czasu i ponawianie na każde wywołanie zewnętrzne, żeby jedno zawieszone połączenie nie zajmowało zasobów serwera.
  5. 5. Popraw bazę. Tabele mapowań i logów synchronizacji zwykle rosną bez indeksów i po latach same stają się wąskim gardłem. Zobacz jak zoptymalizować bazę danych PrestaShop.
  6. 6. Potwierdź poprawę testem obciążeniowym przed kolejnym szczytem, a nie w jego trakcie. Jak to zrobić: testy wydajnościowe PrestaShop przed i po Black Week.

Jeśli integracja była budowana przez kilku wykonawców, warto równolegle sprawdzić dług techniczny wokół niej: równoległe klucze API i nieudokumentowane nadpisania rdzenia to częste znaleziska, które opisujemy w tekście o pięciu najczęstszych problemach technicznych w PrestaShop. Punktem wyjścia jest audyt techniczny, a stabilizację i utrzymanie prowadzimy w ramach integracji PrestaShopstałej opieki technicznej WayCare.

Następne pytanie

Jak zaprojektować integrację PrestaShop z ERP i magazynem, żeby nie blokowała sprzedaży przy dużym ruchu?

Przejdź do następnego pytania