Too Cool for Internet Explorer

New xserve arrived ...


Last year we purchased our first xserve. Yesterday our second one arrived at our office. Today "he's" standing on my desk. Tomorrow, when we moved him to our data center, he will help encoding videos ...









Neue Serverlandschaft bei pixelio.de


In den vergangenen fünf Jahren ist pixelio.de aus einem Hobbyprojekt eine kleine Firma geworden und aus ehemals einem Server ist eine Serverlandschaft mit 10 Servern und einem Loadbalancer entstanden. Die letzten Wochen haben wir endlich unser Netzwerk umstrukturiert und auf eine solidere Basis gestellt, sodass wir es zukünftig leichter haben weitere Server aufzunehmen. Dabei muss man mal ein Lob an HostEurope aussprechen, die im Service und Support eine wirklich gute Arbeit leisten -- es hat schon einen Vorteil, wenn man direkt mit Technikern am Telefon reden kann im Vergleich zu anderen Providern, wo das nur über einen Call-Center möglich ist und das ganze einem Stille-Post ähnelt (und die Ergebnisse entsprechend ausfallen).

Wir nutzen nachwievor eine alte Software, die eigentlich nicht für eine derart grosse Bilddatenbank ausgelegt ist und ausgesprochen schlecht skaliert. Um das Datenbankproblem in den Griff zu kriegen, setzen wir seit einiger Zeit schon den mysql-proxy von Jan Kneschke ein. Dieser Proxy kann transparent zwischen die Datenbank und eine Web-Anwendung gehängt werden und lässt sich über lua voll steuern. Über ein lua Script können wir so alle Queries parsen, der Proxy entscheidet dann welche Queries an den Master gehen müssen und welche an die Slaves. Das funktioniert sehr gut -- viel besser als eine reine PHP basierte Lösung, die wir ursprünglich mal in die Datenbankschicht der Bilddatenbank-Software gestrickt hatten.

Für nächstes Jahr ist endlich die Einführung einer von Grund auf neu entwickelten Software angedacht, die wir derzeit schon bei clipdealer.de im Einsatz haben. In diesem Zuge werden wir dann auch einen memcache-Cluster aufbauen, der die Datenbank massiv entlasten soll.

Ich bin gespannt, wie das Server-Diagramm in weiteren fünf Jahren aussehen wird ...



PixelQuelle Web Server / lighttpd


In den letzten Tagen gab es für uns noch einiges zu tun. Mit dem Umzug auf den neuen Server hatten wir uns dafür entschieden zum Performance Tuning zwei Web Server auf unserer Maschine laufen zu lassen. Ein Apache mit PHP5 Unterstützung zum Ausliefern der dynamischen Seiten und einen eigenen Web Server, der alle Bilder (Thumbnails, Previews, Icons etc.) ausliefert, sodaß der Apache sich rein um die php-generierten Seiten kümmern kann. Bei dem zweiten Web Server habe ich mich für lighttpd  entschieden.

Unser erstes Konzept sah vor, daß der Apache auf dem Standard Port 80 laufen sollte und der 2. Web Server auf Port 8080. Leider ist es so, daß Port 8080 oft Firewall bedingt nicht zur Verfügung steht und deshalb ein paar unserer Benutzer keine Bilder mehr sehen konnten.

In so einem Fall macht es sich dann wirklich bezahlt, welchen Server Provider man wählt: Wir konnten über unseren neuen Provider problemlos weitere IP Adressen bestellen und sind nun in der Lage unsere beiden Web Server mit unterschiedlichen IP Adressen über den Standard Port 80 zu betreiben.

Vor dem Umzug der PixelQuelle habe ich mir einige performance optimierte Web Server angesehen und bin dabei auf lighttpd von Jan Kneschke gestossen. lighttpd ist klein, schnell, flexibel und äußerst leicht zum Installieren. Die Projektseite bietet u.a. eine übersichtliche Dokumentation, wer weitere Informationen benötigt oder Fragen hat, dem sei die Mailingliste und das Archiv empfohlen.

Ich mag lighttpd, weil er äußerst zuverlässig ist, sich leicht konfigurieren läßt und man schnell und unkompliziert mehrere Web Server mit unterschiedlichsten Konfigurationen starten kann. Es juckt mich direkt in den Fingern einmal den Apache, der ja im moment noch für die dynamischen Web Seiten zuständig ist, ebenfalls durch lighttpd zu ersetzen.



pixelquelle.de - neuer server



Wir haben in den letzten Tagen und Wochen hart daran gearbeitet den neuen PixelQuelle Server nach unseren Wünschen und Anforderungen zu konfigurieren und die neuen Features zu integrieren. Seit wenigen Minuten ist der Umzug nun endlich abgeschlossen und ich muß sagen, die Arbeit hat sich gelohnt. Der Andrang im Moment ist sehr groß und der Server läßt sich nicht aus der Ruhe bringen... :-)


5. PixelQuelle.de Fotocontest #2


Morgen abend um 24:00 endet der 5. PixelQuelle.de Fotocontest. Bis dahin können noch Photos hochgeladen werden, Thema ist diesmal: "Die Welt im Detail (Makroaufnahmen)" und der Hauptpreis ist ein Manfrotto MA 680B Compact Einbeinstativ.

Viel Spaß!


Performance Tuning - Buchtitel


Die PixelQuelle wächst und wächst. Das macht es für uns als Betreiber erforderlich, daß wir uns intensiv mit dem Thema Performance auseinandersetzen. Wir haben ein Konzept mit verschiedensten Maßnahmen erarbeitet, das wir in diesem Jahr nach und nach Umsetzen werden.

Neben dem obligatorischem Server Upgrade kann man auch sehr, sehr viel auf Anwendungsebene erreichen. Ich werde mal in den nächsten Wochen und Monate Reviews zu einigen Büchern schreiben, die ich mir als Lern- und Informationsquellen zu diesem Zweck zugelegt habe:


  • "MySQL High Performance Tuning" (Danke, Markus! ;-))

    Jeremy D. Zawodny & Derek J. Balling, O'Reilly Verlag

  • "Apache Kochbuch"

    Ken Coar & Rich Bowen, O'Reilly Verlag

  • "Web Performance Tuning"

    Patrick Killelea, O'Reilly Verlag

  • "Advanced PHP Programming"

    George Schlossnagel, Sams Publishing