Indeksowanie w Magento
Magento wykonuje indeksowanie automatycznie po każdej zmianie co najmniej jednego sprzedawanego przez Ciebie przedmiotu. Czynności, które powodują ponowne zindeksowanie, obejmują zmiany cen, tworzenie katalogów lub reguł cen w koszyku, dodawanie nowych kategorii i tak dalej. Aby zoptymalizować wydajność, Magento gromadzi dane w specjalnych tabelach za pomocą indeksatorów. Gdy dane się zmieniają, zindeksowane tabele muszą zostać zaktualizowane – lub ponownie zindeksowane. Magento jest reindeksowane jako proces w tle, a Twój sklep pozostaje dostępny podczas takiego procesu.
Ponowne zindeksowanie danych przyspiesza przetwarzanie i skraca czas oczekiwania dla klienta. Na przykład, jeśli zmienisz cenę produktu z 12,69 PLN na 9,99 PLN, Magento ponownie zindeksuje dane, aby zaktualizować zmianę ceny w sklepie. Bez indeksowania Magento musiałoby obliczać cenę każdego produktu 'w locie’ – biorąc pod uwagę reguły cenowe w koszyku, ceny pakietów, rabaty, ceny poziomów i tak dalej. Wczytanie ceny produktu może zająć więcej czasu, niż klient jest byłby skłonny czekać.
Indeksatory można ustawić tak, aby aktualizowały się przy zapisywaniu lub zgodnie z harmonogramem. Wszystkie indeksy mogą korzystać z dowolnej opcji, z wyjątkiem Customer Grid, który obsługuje tylko zapisywanie. Podczas indeksowania przy zapisywaniu Magento rozpoczyna ponowne indeksowanie przy wybraniu akcji -> zapisz. Strona zarządzania indeksem zaktualizuje i opróżni wiadomość dotyczącą ponownego zindeksowania w ciągu minuty lub dwóch. Podczas ponownego indeksowania według harmonogramu reindeksowanie przebiega zgodnie z harmonogramem jako zadanie cron. Jeśli zadanie cron nie jest dostępne, aby zaktualizować jakiekolwiek indeksatory, które staną się nieprawidłowe, pojawi się komunikat systemowy, który poinformuje Cie o tym fakcie.
Twój sklep pozostaje dostępny podczas procesów reindeksowania.
Gdy musisz ponownie dokonać zindeksowania, u góry strony pojawi się powiadomienie. Indeks i wiadomość są czyszczone na podstawie tego, w jakim trybie zindeksowania jesteś oraz potencjalnych działań, które wykonujesz.
Najważniejsze informacje
- Zarządzanie indeksem ma nieco inny sposób prezentacji dla katalogów produktów płaskich.
- Aby uniknąć problemów, gdy wielu administratorów dokonuje aktualizacji, które wyzwalają automatyczne ponowne indeksowanie, zalecam ustawienie wszystkich indeksatorów tak, aby działały zgodnie z harmonogramem jako zadania cron. W przeciwnym razie za każdym razem, gdy jakikolwiek obiekt jest zapisywany, może spowodować tzw. „zakleszczenie”. Objawy zakleszczenia obejmują wysokie zużycie procesora i błędy MySQL. Najlepszym rozwiązaniem jest użycie zaplanowanego indeksowania.
Dobre praktyki
Reindeksowanie i buforowanie mają różne cele w Magento. Indeksy śledzą informacje z bazy danych w celu zwiększenia wydajności wyszukiwania, szybszego pobierania danych dla Twojego sklepu i nie tylko. Pamięci podręczne zapisują załadowane dane, obrazy, formaty i tym podobne, aby zwiększyć wydajność ładowania i uzyskiwania dostępu do witryny.
- Zazwyczaj indeksuj podczas aktualizacji danych w Magento.
- Jeśli masz duży sklep lub wiele sklepów, możesz ustawić indeksatory, takie jak kategorie i produkty, do zaplanowanych zadań cron ze względu na potencjalne zapętlenie reindeksowania. Możesz ustawić reindeksację zgodnie z harmonogramem poza godzinami szczytu, np. bardzo wczesnym rankiem.
- Podczas reindeksowania nie musisz wykonywać czyszczenia pamięci podręcznej.
- W przypadku nowych instalacji Magento musisz opróżnić pamięć podręczną i ponownie zrobić indeksowanie.
- Opróżnianie pamięci podręcznej i ponowne indeksowanie nie powoduje opróżnienia pamięci podręcznej przeglądarki internetowej na komputerze. Zalecamy również opróżnienie pamięci podręcznej przeglądarki po zakończeniu aktualizacji sklepu.