IP-Adressen optimal speichern

In (fast) allen Webprojekten müssen IP-Adressen gespeichert werden. Wenn nur einige wenige Einträge in der Datenbank vorhanden sind, ist das sicher kein Problem. Interessant wird es, wenn mehrere 1000 Einträge durchsucht werden müssen, um festzustellen, ob eine IP vorhanden ist, oder nicht. Wie man das ganze effektive steuert wird im folgenden erläutert.

Gepufferter und ungepufferter Zugriff auf MySQL-Tabellen

Wer schon mal mit höheren Programmiersprachen zu tun hatte, kennt gepufferte und ungepufferte Datenströme. Auch MySQL bietet uns die Möglichkeit das Result-Set einer SELECT-Anfrage gepuffert und ungepuffert zurückzugeben. PHP bietet aus diesem Grund auch zwei verschiedene Funktionen dafür an – je nach gewünschter Pufferung: mysql_query() (gepufferter Datenstrom) und mysql_unbuffered_query (ungepuffert, sagt ja der Name schon…

Fast-CGI – was steckt dahinter?

PHP als Modul des Apache nutzt – wie andere Scriptsprachen auch (beispielsweise Perl oder ASP) – das CGI, um Anfragen an einen Webserver zu senden und das Ergebnis an den Client zurück zu schicken. Für jede Anfrage muss dabei ein neuer Prozess angelegt werden, der nach der abgeschlossenen Bearbeitung des Scripts wieder beendet wird. Das…

Das Rätsel um –enable-inline-optimization

Wenn man im Internet Tipps sucht, wie man PHP möglichst performant kompiliert, liest man häufig, dass man die Option –enable-inline-optimization einsetzen sollte. Sie aktiviertso genannte Inline Optimizations. Doch worum handelt es sich dabei eigentlich? Sicherlich reicht es oft zu wissen, DASS es damit schneller geht und nicht WARUM. Trotzdem möchte ich einmal die Hintergründe hinter…

Datentypen: So klein wie möglich, so groß wie nötig

Jede Spalte in einer Tabelle hat einen Datentyp. Einige sind untereinander kompatibel, andere weniger. Um sämtliche Prozesse der Datenbank zu beschleunigen, ist es ratsam die Datentypen clever zu wählen und nicht “frei Schnauze” einfach bei allen Ganzzahlen BIGINT zu nehmen, denn “das wird schon funktionieren”. Sicherlich funktionierts – nur zu welchem Preis?

Nicht mehr includen als nötig

Wenn man häufig genutzte Funktionen in eine extra Datei auslagert, die dann einfach per include() oder require() in alle anderen Scripte der Seite eingebunden werden kann, ist das eine feine Sache. Es gibt allerdings ein Problem mit einer solchen Include-Datei: Meistens werden für bestimmte PHP-Scripte nur einige Funktionen benötigt und nicht alle, die in der…