Was DU suchst - ist das was WIR gefunden haben

Was DU suchst - ist das was WIR gefunden haben

Archiv für die Kategorie ‘PHP’

phpUnderControl - Continuous Integration in PHP aus einer Hand

Geschrieben von Tyler am November - 29 - 2007

In einem meiner letzten Artikel habe ich schon ja über das Konzept der Continuous Integration berichtet, heute möchte ich ein Tool vorstellen welches dies nahezu perfektioniert. phpUnderControl von Manuel Pichler integriert einige der besten PHP Development Tools in CruiseControl. Mit Hilfe der mitgelieferten XSL Stylesheets lassen sich die Ausgaben von PHPUnit, PHP_CodeSniffer und phpDocumentor generierten Ausgaben in CruiseControl visualisieren. Die Coding Violations Übersicht z.B. verschafft einen sehr schnell eine gute Übersicht über den bisherigen Projektverlauf.

phpundercontrol-coding--violations

Stellt sich nur noch die Frage, was ist CruiseControl überhaupt? CruiseControl ist ein Java basiertes Programm, das in der Software Entwicklung benutzt wird, um das Konzept der Continuous Integration umzusetzen. CruiseControl enthält neben Plugins zur automatischen Benachrichtigung per Mail, zur Nutzung von Ant auch Schnittstellen um weitere Programmierwerkzeuge einzubinden. CruiseControl ist Open Source wird unter einer BSD-artigen Lizenz vertrieben. Ich finde das das phpUnderControl Projekt großartig. So scheint das wohl auch Sebastian Bergmann (der Entwickler von PHPUnit ) zu sehen, denn das Projekt ist mittlerweile dort gehosted.

Wie schreibe ich gut lesbaren PHP Code ?

Geschrieben von Tyler am November - 8 - 2007

gut lesbaren PHP Code zu erstellen ist eine Kunst für sich. Arbeitet man mit mehreren Entwicklern an einem Projekt, sind Coding Standards eigentlich unumgänglich. Die Frage die man sich also stellen muss ist, was ist nötig, um gut les- und wartbaren Quellcode zu erstellen ?

Ein paar Grundsätzliche Dinge sind z.B. Den Rest des Artikels lesen »

PHP Profiling mit KCachegrind und XDebug

Geschrieben von Tyler am Oktober - 30 - 2007

Heute möchte ich ein Tool vorstellen das ich seit geraumer Zeit benutze und in meinem Entwicklungsalltag nicht mehr missen möchte. Es handelt sich um KCachegrind. KCachegrind ist ein Werkzeug mit dem man Profilierungsdaten visualisieren kann.

Ich betreibe KCachegrind mit XDebug. XDebug ist ein Profiler / Debugger für PHP. Wenn XDebug richtig konfiguriert ist generiert es Logfiles wie ‘cachegrind.out.254887787′

Hier Eine Beispiel Konfiguration in der php.ini Den Rest des Artikels lesen »

mod_top - Monitoring für PHP Applikationen

Geschrieben von Tyler am Oktober - 27 - 2007

Für Linux Administratoren ist Top schon seit Urzeiten ein Utility um sich eine Übersicht über die laufenden Prozesse und deren Systemressourcen zu verschaffen. Mit mod_top ist es möglich PHP Applikationen in einer Top ähnlichen Benutzeroberfläche zu überwachen.

Mit mod_top haben sie die Möglichkeit Bottlenecks in ihren Applikationen ausfindig zu machen sowie Informationen zum CPU und Speicherverbrauch ihrer Klassen / Funktionen zu sammeln

Derzeit unterstützt mod_top PHP, die Unterstützung von Perl, Python, Ruby, MySQL, Postgres auf Apache1.x und Apache2.x ist aber geplant.

Hier ein Screenshot eines mod_top Monitoring

mod_top Screenshot - Monitoring für PHP Applikationen

Tolle Idee und ein weiterer Schritt zur Lösung des Problems

“Mein Server, das fremde Wesen…”

Race Conditions mit Ajax und PHP Sessions

Geschrieben von Tyler am Oktober - 27 - 2007

Ich bin auf dem Blog von Thwartedefforts auf einen interessanten Artikel zum Thema Ajax und Race Conditions gestoßen.

Race Conditions (dt. :Wettlaufsituationen) innerhalb eines Programmablauf, sind Konstellationen, in denen das Gesamtergebnis einer Operation vom zeitlichen Verhalten bestimmter Einzeloperationen abhängt.

Unbeabsichtigte oder dem Entwickler unbewusste Race Conditions führen häufig zu schwer auffindbaren Programmfehlern. Ein Indiz für die Existenz einer Race Condition ist häufig, das ein scheinbar unverändertes Testszenario bei mehren Testläufen unterschiedliche Testergebnisse liefern kann. Dies schließt das völlige verschwinden der Symptome ein.

Wenn man den Standard built-in PHP Session Handler nutzt (also den Dateibasierten) ist man vor diesem Problem Den Rest des Artikels lesen »

WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.