Lieber haben als hätten – auch Sinnloses

Heute bin ich bei einem Performance Problem eines Webservers über eine interessante PHP Applikation gestoßen – und zwar ein osCommerce Shop aus dem Jahr 2002.

Dieses speichert seit Jahren alle Hostnamen die auf der Seite surfen in einer MySQL Tabelle ab. Da es sich um einen relativ kleinen Online-Shop handelt waren es „nur“ 250.000 Reihen in dieser Tabelle. Der Primary-Key liegt auf dem Feld ID und die Tabelle heißt „mnm_hosts“

Es ist zwar schön genau zu sehen wie oft welcher Googlebot auf dem Webspace unterwegs war, was dann wie folgt aussieht:

crawler13.googlebot.com => 1299
crawler14.googlebot.com => 1763
crawler15.googlebot.com => 586
crawler11.googlebot.com => 1292

Auf jedenfall ist dies ein echter Performancekiller da bei jedem Klick in der Tabelle gesucht wird , ob ein Host schon vorhanden ist, um danach ein Update der Hits um 1 durchzuführen. Zusätzlich gibt es scheinbar keine Möglichkeit diese Tabelle sinnvoll zu bereinigen, da keine Daten gespeichert werden, anhand welchen man z.B. alle Einträge älter als 4 Wochen löschen könnte. ARG warum kann nicht jede Software (auch online PHP) einen Update Button haben…

KategorienDies & Das
  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks