Przeczytałem dyskusję na temat wydajności różnych bezpośrednich linków na liście mailingowej wp hakerów, na tym forum i wokół Google.
Nie mogłem jednak naprawdę wywnioskować, czy struktura permalink, której używałem przez ostatnie lata, jest dobra, czy nie:
/%postname%-%year%%monthnum%%day%.html
Ta kombinacja umieszcza nazwę postu bezpośrednio po / oraz rok, miesiąc, dzień, czyni ją bardziej unikalną, ponieważ wiele nazw ma tę samą nazwę. Dodatek HTML jest czymś, czego używam przez ostatnie 10 lat na moim blogu (nawet przed Wordpress), więc jest to dziedzictwo.
Nie wiem, czy to jest dobre dla permance czy złe dla wydajności, jak mogę to sprawdzić?
(Prowadzę blog od +10 lat i jest tam około 10.000 postów z wieloma linkami)
spinki do mankietów:
źródło
Wetuję przyjętą odpowiedź. Złożoność reguł przepisywania nie jest w żaden sposób miarą wydajności wyszukiwania artykułów.
W szczególności wydaje się, że rozpoczynanie twoich bezpośrednich łączy z nazwami postów jest złe; patrz http://codex.wordpress.org/Using_Permalinks#Structure_Tags
Bez wglądu w kod Wordpress mogę sobie wyobrazić, że w jakiś sposób indeksują posty w sposób hierarchiczny. Dlatego zmienne używane w permalinkach powinny być uporządkowane od lewej do prawej, od najbardziej ogólnej do najbardziej użytej zmiennej. Ta heurystyka zdecydowanie sprzyja standardom rok / miesiąc / nazwa lub kategoria / nazwa.
źródło
category/name
jest faktycznie znany i potwierdzany jako powodujący problemy z wydajnością, jeśli występuje duża liczba stron. Nie jest to tak bardzo związane z szybkością wyszukiwania, jak z wydedukowaniem poprawnego obiektu do obsługi, a złożoność reguł przepisywania jest całkowicie istotna.(wp-include/rewrite.php
iwp-include/query.php
); choć wygląda naprawdę okropnie i niepotrzebnie skomplikowanie, wydaje się, że w zasadzie części są gromadzone i identyfikowane, a następnie bezpośrednio wstawiane do zapytań SQL. Nadal nie rozumiem, dlaczego to powinno trwać dłużej dla różnych zamówień. Ale gdy wykonywane jest zapytanie db, należy wykonać kilka połączeń, a tutaj kolejność naprawdę ma znaczenie. Wydaje mi się, że pamiętam, że MySQL szczególnie źle optymalizuje kolejność łączenia./page/
i każdego adresu URL postu/post/
, usuwając jednoznaczność. Powinieneś być w stanie zrobić to sam, dodając stały tekst do struktury permalink. W każdym razie prawdopodobnie byłaby to dobra decyzja; co się stanie, jeśli mam post BAR w kategorii FOO i BAR page, który jest podstroną FOO? Oba rozwiązania zostałyby rozwiązane poprzez/foo/bar/
przyjęcie schematu% category% /% postname%. Czy ślimaki są globalnie wyjątkowe?Tylko dla kontroli jakości pracy:
Odpowiedź brzmi: NIE, nie jest to dobra struktura bezpośredniego połączenia dotycząca wydajności.
źródło