Prawdopodobnie będę potrzebował użyć modułu PathAuto do bieżącego projektu. Podczas używania go jako programisty spowolnienie witryny podczas zmian jest szalone.
Czy PathAuto jest dużym ujściem pamięci i czy istnieją sposoby na złagodzenie tego?
7
path-aliases
David Csonka
źródło
źródło
Odpowiedzi:
Zależy to w dużej mierze od używanej wersji rdzenia. Główny problem z pamięcią dotyczy modułu Token dla Drupala 6, gdy dany węzeł wygeneruje wszystkie możliwe tokeny dla tego węzła, bez względu na tokeny, które faktycznie zostaną wymienione. Oznacza to, że problemy powodują drogie tokeny, które muszą ładować lub renderować inne obiekty itp., A także generowana liczba tokenów.
W Drupal 7 ulepszony interfejs API tokenu generuje tylko tokeny, których faktycznie używasz i znacznie poprawia wydajność i wykorzystanie pamięci. Podczas normalnego użytkowania Pathauto naprawdę ma znaczenie tylko podczas zapisywania elementu, ale nie wpływa na „normalne” wyświetlenia strony.
źródło
Jednym z problemów, na które natknęliśmy się w Drupal 7, jest to, że masz wiele węzłów, które otrzymałyby ten sam alias ścieżki. Ponieważ wtedy dzieje się tak, że pierwszy dostaje $ alias, drugi próbuje $ alias, widzi, że ten jest już zarezerwowany i używa $ alias-1. Trzeci próbuje $ alias, następnie $ alias-1, a następnie używa $ alias-2. I tak dalej. To nie jest problem pathauto i nie jest to naprawdę błąd, ponieważ powinieneś albo wyczyścić swoje gówniane dane (mieliśmy 600 tys. Zaimportowanych artykułów drukowanych z setkami równych tytułów ... jak „pogoda”;)) lub wybrać lepszy wzór dla swojego aliasu (np. podaj datę). Może to również poważnie spowolnić import danych, jeśli włączono pathauto.
Innym problemem jest to, że przeglądarka tokenów eksploduje, jeśli masz wiele pól, które mogą całkowicie zniszczyć dowolną stronę z listą przeglądarki tokenów, zwłaszcza strona konfiguracji pathauto, która ma wiele takich pól.
Poza tymi powiązanymi problemami, nie widziałem żadnych bezpośrednich problemów z wydajnością spowodowanych przez Pathauto. Jeśli uważasz, że tak, naprawdę powinieneś profilować swoją witrynę za pomocą Xhprof, aby zobaczyć, co tak naprawdę korzysta z procesora / pamięci.
źródło