Leistung meiner Permalink-Struktur?

14

Ich habe die Diskussion über die Leistung verschiedener Permalinks auf der WP-Hacker-Mailingliste, in DIESEM Forum und bei Google gelesen.

Ich konnte jedoch nicht wirklich ableiten, ob die Permalink-Struktur, die ich in den letzten Jahren verwendet habe, gut ist oder nicht:

/%postname%-%year%%monthnum%%day%.html

Durch diese Kombination wird der Postname direkt nach dem / und der Kombination aus Jahr, Monat und Tag eingefügt, da viele Postnamen denselben Namen tragen. Der HTML-Zusatz ist etwas, das ich in den letzten 10 Jahren in meinem Blog (sogar vor WordPress) verwendet habe, also ein Vermächtnis.

Ich weiß nicht, ob dies gut für die Durchlässigkeit oder schlecht für die Leistung ist, wie kann ich das überprüfen?

(Ich leite den Blog seit über 10 Jahren und es gibt ungefähr 10.000 Beiträge mit vielen Links in)

Links:

  1. http://codex.wordpress.org/Using_Permalinks

  2. http://www.google.com/search?q=wordpress+category+permalink+performance

  3. http://ottopress.com/2010/category-in-permalinks-considered-harmful/

  4. http://lists.automattic.com/pipermail/wp-hackers/2010-October/035458.html

Edelwasser
quelle

Antworten:

8

Sie können die Größe der Option rewrite_rules in der Datenbank überprüfen. Wenn es klein ist (was meiner Meinung nach bei dieser Struktur der Fall sein sollte), verwenden Sie keine ausführlichen Regeln. Wenn Sie dagegen mehrere Zeilen pro statischer Seite sehen, verwenden Sie ausführliche Regeln und das ist nicht gut.

Denis de Bernardy
quelle
leider ... gibt es mehrere Zeilen pro statischer Seite GRIN. Das ist also wahrscheinlich keine gute Permalink-Struktur ... hmmmm ... das erklärt eine Fehlermeldung, die ich vor einiger Zeit erhalten habe.
Edelwasser
dann wieder ... wenn du jahrelang weitere seiten hinzufügst, bekommst du automatisch max_allowed_packet egal was passiert ... es sei denn du greifst auf nicht schöne permalinks zurück ... (glaube ich) also ... um für die nächsten 30 jahre skalierbar zu sein: ) Ich werde wahrscheinlich auf nicht schöne Permalinks zurückgreifen müssen. Meiner Ansicht nach.
Edelwasser
1
Solange Sie nicht ausführliche Regeln verwenden, gelten für Ihre Seite allgemeine Regeln für Anhänge und benutzerdefinierte Beitragstypen. So hübsche Links sind in der Praxis ziemlich sicher, solange sie eine non-verbose Struktur verwenden.
Denis de Bernardy
1

Ich habe ein Veto gegen die akzeptierte Antwort eingelegt. Die Komplexität der Umschreiberegeln ist in keiner Weise ein Maß für die Leistung der Artikelsuche.

Insbesondere scheint es schlecht zu sein, Ihre Permalinks mit Post-Namen zu beginnen. Siehe http://codex.wordpress.org/Using_Permalinks#Structure_Tags

Ohne in Wordpress-Code geschaut zu haben, kann ich mir vorstellen, dass sie irgendwie Beiträge hierarchisch indexieren. Daher sollten die in Permalinks verwendeten Variablen von links nach rechts von der allgemeinsten bis zur am häufigsten verwendeten postspezifischen Variablen sortiert werden. Diese Heuristik bevorzugt stark die Standards Jahr / Monat / Name oder Kategorie / Name.

Raphael
quelle
1
category/nameEs ist bekannt und bestätigt, dass es zu Leistungsproblemen kommt, wenn eine große Anzahl von Seiten vorhanden ist. Es hängt nicht so sehr mit der Geschwindigkeit der Suche zusammen, wie mit der Ermittlung des richtigen zu bedienenden Objekts, und die Komplexität der Umschreiberegeln ist vollständig relevant.
Rarst
Können Sie bitte einen Doc / Code-Verweis geben? Ich habe gerade den Code überflogen (wp-include/rewrite.phpund wp-include/query.php); Während es wirklich schrecklich und unnötig kompliziert aussieht, scheint es, dass im Grunde genommen die Teile gesammelt und identifiziert und dann direkt in SQL-Abfragen eingefügt werden. Ich kann immer noch nicht verstehen, warum dies bei verschiedenen Bestellungen länger dauern sollte. Wenn die Datenbankabfrage ausgeführt wird, müssen mehrere Verknüpfungen ausgeführt werden, und hier ist die Reihenfolge wirklich wichtig. Ich scheine mich zu erinnern, dass MySQL besonders schlecht darin ist, die Join-Reihenfolge zu optimieren.
Raphael
Ich bin nicht zu tief in der DB-Theorie, aber Sie müssen Produkte klein halten. In jedem Fall könnte dies ein Fehler in dem Sinne sein, dass es nicht so effizient programmiert ist, wie es sein könnte.
Raphael
2
Der Codex gibt "Ein paar TIPPS" (siehe Codex) und gibt nicht den vollständigen Algorithmus an. Es deutet jedoch darauf hin, dass ottopress.com/2010/category-in-permalinks-considered-harmful und comox.textdrive.com/pipermail/wp-testers/2009-January/… alles in allem gibt es eine Art Reibung zwischen Best Practices von URL-Hacking im Bereich der Mensch-Computer-Interaktion und Leistung aus dem Bereich der Leistungsverbesserung.
Edelwasser
1
Danke für den Hinweis ottopress. Es scheint, dass Konventionen so geändert werden, dass jede Seiten-URL mit /page/und jede Post-URL mit beginnt /post/, wodurch die Eindeutigkeit beseitigt wird. Sie sollten in der Lage sein, dies selbst zu tun, indem Sie den festen Text zu Ihrer Permalink-Struktur hinzufügen. Dies wäre wahrscheinlich sowieso eine gute Entscheidung; Was passiert, wenn ich eine Beitrags-BAR in der Kategorie FOO und eine Seiten-BAR habe, die eine Unterseite von FOO ist? Beides würde durch die /foo/bar/Annahme des Schemas% category% /% postname% gelöst. Oder sind Schnecken weltweit einzigartig?
Raphael
0

Nur für den Workflow QA:

Die Antwort lautet: NEIN, dies ist keine gute Permalink-Struktur in Bezug auf die Leistung.

Edelwasser
quelle