Datenbank-Last durch Ajax Edit Comments…

… und eine vorläufige Lösung:

Das WordPress-Plugin „Ajax Edit Comments“ vom Reader Appreciation Project1 erlaubt dem Kommentator die nachträgliche Bearbeitung seines Kommentars für einen bestimmten Zeitraum – nützlich gerade bei Tippfehlern oder kleinen Ergänzungen. (Und Admins können noch mehr.) Meine Besucher benutzen diese Funktion übrigens bei rund jedem 10. Kommentar.

Nun hat Pierre mich gestern darauf aufmerksam gemacht, dass die Anzahl der Datenbankabfragen recht hoch ist (und die Antwortzeit könnte auch besser sein) – höher als das, was ich immer gesehen habe, wenn ich eingeloggt bin. (Siehe blaue Fußzeile.) Mit etwas Nachforschen hab ich herausgefunden, dass eben jenes Ajax Edit Comments für jeden einzelnen Kommentar 4 zusätzliche Datenbank-Queries „verbrät“, um festzustellen, ob der Besucher den Kommentar editieren darf (wenn er nicht als Admin eingeloggt ist, der das immer darf). Bei vielen Kommentaren zu einem Beitrag läppert sich da ganz schön was zusammen.

Ich hab auf die Schnelle eine kleine Änderung ins Plugin eingebaut2, die vorab das Kommentar-Alter ohne Datenbankzugriff überprüft – in den ersten kurzen Tests scheint das gut zu funktionieren. Wenn ihr auch keine Probleme feststellt – ihr dürft es gern hier oder z.B. später beim Musik-Quiz (ab 16 Uhr) testen –, werd ich dem Autor des Plugins natürlich die Änderungen zukommen lassen, in der Hoffnung, dass sie in künftige Versionen integriert werden. :)

 


  1. für WordPress 2.5 und höher – alte Version für 2.1–2.3.x hier []
  2. sowohl in die alte Version hier als auch in die neue in meiner Testumgebung, wo ich das Update auf WordPress 2.7 vorbereite []

20 Kommentare

  1. PM

    Hey, da hast Du ja schnell ne Lösung gefunden. Leider habe ich heute zum Musik-Quiz wieder keine Zeit :-(

  2. S

    sexy Symbolfoto :mrgreen: herrlich

  3. c

    Würde mich mal interessieren, was die weiblichen Leser dazu sagen. :)

    Pierre, tja, schade mit dem Quiz – und jetzt ist es auch schon wieder vorbei…

  4. M

    Hola die Waldfee, ich dachte mir gerade warum das bei mir nicht so ist, dabei war ich ja als Admin eingeloggt… 442 Queries bei 96 Kommentaren. Gute Nacht.

  5. c

    Solang’s der Server aushält… :|

    Sofern der Plugin-Autor keine Nebenwirkungen meiner Änderungen findet (so wahnsinnig übersichtlich ist der Code nicht), dürfte er sie ja bald einbauen – andernfalls (bzw. auch jetzt schon) kann ich ja selber meine Version zur Verfügung stellen.

  6. M

    Och, jetzt liefs schon so lange, jetzt kann ich auch auf das offizielle Update warten! Aber lobend erwähnen werd ich, wenns soweit ist. :)

  7. M

    Hat dir der Autor verraten, wann er das Update plant?

  8. c

    Er hatte nur (kurz nach meiner Mail) gesagt, er würde sich drum kümmern – mehr/genaueres hab ich seitdem nicht von ihm gehört.

  9. M

    Stell doch mal deine Version zur Verfügung, das dauert mir beim Autor zu lange. :)

  10. M

    Danke!

  11. M

    Fein, von 500 auf 60 Queries nenne ich mal einen signifikanten Abstieg.

  12. M

    Gerade hab ich auf die neuste Version aktualisiert und dein Patch wurde immer noch nicht integriert!

Schreib einen Kommentar

Alle Angaben sind freiwillig. Die E-Mail-Adresse wird nicht veröffentlicht oder weitergegeben.

  • Moderation: Wer zum ersten Mal kommentiert, dessen Kommentar muss manuell von mir freigeschaltet werden.
  • Benimm dich! Keine Beleidigungen, keine rechtswidrigen Inhalte u.s.w.! Sollte eigentlich selbst­verständlich sein, oder...?
  • Webseite: Nichts gegen Blogs mit Werbung, aber rein kommerzielle Links sind unerwünscht und werden gelöscht. Reine Spam-Kommentare natürlich auch.
  • E-Mail-Benachrichtigung bei neuen Kommentaren: Diese Funktion musst du über eine beim ersten Mal verschickte Bestätigungs-Mail freischalten. Diese Benachrichtigungen können mit dem auch in jeder Mail enthaltenen Link auch wieder deaktiviert werden.
  • Twitter: Wenn du einen Twitter-Account hast, kannst du im entsprechenden Feld deinen Twitter-Namen eingeben (egal ob mit oder ohne dem @), der dann bei allen (auch älteren) Kommentaren, die dieselbe E-Mail-Adresse enthalten, angezeigt wird. (Heißt auch: das E-Mail-Adressfeld muss auch ausgefüllt sein.)
  • Erlaubte HTML-Tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <sub> <sup> <big> <small> <u>