performance

Drupal langsame Schreibzugriffe mit innodb

Mit Drupal 6.17 wurde innoDB eingeführt. Bisher wurde immer myisam verwendet. Die Standardwerte, welche mit MySQL kommen sind für MyIsam ziemlich gut und man kommt schon sehr weit damit. Verwendet man jedoch die Standardwerte für innoDB, dann hat man einen ziemlich Flaschenhals. 

Drupal Benchmark - Einfluss der Anzahl an Drupalmodulen

Ich habe mich immer gefragt, wie die Anzahl an Modulen die Drupal Performance beeinflusst. Ich habe mich oft gefragt, ob es besser ist viele kleine Module zu haben, oder aber ein grosses. Endlich bin ich dazu gekommen einen kleinen Benchmark zu machen. Rein der Übersichtlichkeitshalber ist es eigentlich viel besser die ganzen Funktionalitäten in kleine Module zu unterteilen, was aber dann zur Folge hat, dass das Hook System stärker belastet wird.

Der Testumgebung sah wie folgt aus:

DrupalCon SF - Performance testing

Review und Zusammenfassung der Performance Testing Session

Traffic muss generiert werden, wobei eine massive concurrency eingesetzt wird. Mögliche Tools um Traffic zu generieren: JMeter, LoadRunner, The Grinder.

DrupalCon SF - Performance Session

Performance Optimierung

  • Server von Scratch aufsetzen. Nur das, was auch wirklich gebraucht wird.
  • Unnötige Drupal Modul entfernen (z.B. Statistik)
  • Views, welche problematisch sind entfernen
  • CCK durch eigenes Modul ersetzt -> da nur ganz wenige Felder benutzt wurden

Hardware

  • Fast Disk 15'000 RPM
  • MySQL auf einer Disk, alles andere auf einer anderen Disk

Software

Zusammenkunft mit Edipress, Amazee und Anolim

Heute hatten wir eine kleine Zusammenkunft mit einem Entwickler von Edipresse, Amazee und Anolim und natürlich wir von Previon. Edipresse hat bereits diverse Projekte mit Drupal umgesetzt (z.B. le Matin). Amazee ist eine grössere Kollaborationsplattform.

Review - Drupal 6 Performance Tips

Ich habe vor Kurzem das Buch Drupal 6 Performance Tips

Drupal - PHP Performance

Drupal lässt sich auf vielen verschiedenen Ebenen optimieren: Datenbank, Apache, Server, Architektur und PHP Code.

Auf einige Parameter haben wir als Entwickler weniger Einfluss, auf andere mehr. Auf den PHP Code und dessen Qualität haben wir vollen Einfluss. Die Seite "The PHP Benchmark" hat ein paar interessante Tests durchgeführt. Am interessantesten ist der folgende:

Is it worth the effort to calculate the length of the loop in advance?

Qualitativ hochwertiges Drupal Handbuch

Dokumentation ist leider mangelware in der Drupalszene... Dokumentation ist ja auch das Thema, was einen Entwickler am Wenigsten interessiert und doch ist es so sehr wichtig. Ich habe daher in der Previon das Projekt gefasst, ein Drupal Best Practice Guideline zu schreiben und da man nie alles wissen kann, habe ich beschlossen, das ganze möglichst offen zu schreiben und die Community dazu einzuladen zu partizipieren.

Drupal Performance III - APC, Memcache und Cacherouter

Cacherouter
Ist nicht eigentlich ein Cache sondenr eben der Cacherouter. Der Cacherouter entscheidet, wo die Daten gespeichert werden. Ist der Cacherouter einmal eingeschalten, dann kann man problemlos von einem Cachingmechanismus zum anderen wechseln.

Drupal Performance II - Bremsklötze

Drupal ist nicht gerade sparsam, wenn es an die Anzahl von Queries geht. Hier eine kleine Auflistung, wo es "Query-Schleudern" gibt.

Inhalt abgleichen