PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Archive for 2011

Slides der PHP Community Conference 2011

with 2 comments

An zwei Tagen im April fand die diesjährige PHP Community Conference statt. Es war keine riesen Konferenz, aber hochkarätige Speaker wie Rasmus Lerdorf, Lorna Mitchell, Matthew Weier O’Phinney und Andrei Zmievski sowie weitere bekannte PHPler waren vor Ort. Leider habe ich nicht alle Präsentationen gefunden, wenn ihr die restlichen findet, nur her damit.

21. April 2011
Web Services
Lorna Mitchell

Mastering Zend Framework 2 Patterns
Matthew Weier O’Phinney

Lithium
Joël Perras

Frontend Caching: The New Frontier
Helgi Þormar Þorbjörnsson

22. April 2011
Opening Keynote
Rasmus Lerdorf

Phorum
Brian Moon

Weiterlesen »

Written by Michael Kliewe

Mai 5th, 2011 at 9:35 am

Monitoring PHP mit New Relic RPM

with 8 comments

Ich merke gerade, dass ich noch gar nicht NewRelic vorgestellt habe. In PHP-Cloud-Diensten wie CloudControl oder PHPFog bekommt man direkt auch einen NewRelic-Account, sodass man es kostenlos nutzen und testen kann. Es ist eine Möglichkeit, die Performance von PHP-Scripten zu monitoren, also sowohl Webseiten als auch PHP-CLI-Aufrufe. Es werden neben der Ausführungszeit auch Speicherverbrauch, den Durchsatz (Requests pro Sekunde) und Datenbankqueries geloggt, PHP Errors werden zentral erfasst. Bei Problemen kann man via Email benachrichtig werden, und es werden auch Optimierungsempfehlungen und eine Skalierbarkeitsvorschau gegeben.

NewRelic lässt sich auch auf Produktivsystemen einsetzen, da es die Performance fast nicht beeinträchtigt, XDebug ist beispielsweise zur detaillierten Performance-Messung auf Produktivsystemen nicht geeignet, da es viel zu viel Performance kostet. Falls mehrere Webserver für eine Applikation zuständig sind können diese zusammengefasst werden. Aber auch andersrum ist es möglich, unterschiedliche Ordner auf einem Webserver voneinander zu trennen, sodass sie gesondert betrachtet werden können.

Die Installation ist denkbar einfach unter Linux: Eintrag in die apt-sources und danach apt-get install newrelic-php5 , schon ist die PHP-Erweiterung installiert und aktiviert. Diese Extension loggt die Daten in eine Datei, die von einem Dienst alle paar Sekunden gesammelt an die RPM-Server gesendet werden, wo man dann mit tollen Graphen und Listen alles fast in Echtzeit ansehen kann. Es können auch weitere Zugriffsaccounts angelegt werden, sodass mehrere Personen die Überwachung im Blick haben und analysieren können.

Weiterlesen »

Written by Michael Kliewe

Mai 4th, 2011 at 9:21 am

Posted in PHP

Tagged with , ,

Extending and Embedding PHP

with 4 comments

Im Februar habe ich von Andre das Buch Extending and Embedding PHP von Sara Golemon angeboten bekommen, und da ich noch keinen tieferen Blick in die Erstellung von PHP Extensions geworfen habe, habe ich zugeschlagen. Wie man bei Amazon lesen kann ist es DAS Standard-Buch wenn es um PHP Erweiterungen geht. Allgemein gibt es über die Innereien von PHP nur wenig Literatur, umso interessantere Einblicke gibt das Buch.

Die 410 Seiten beginnen mit einem Überblick über den PHP Lebenszyklus. Wie verhält sich PHP im CLI Modus, in einer Multi-Prozess-Umgebung, in einer threaded-Umgebung oder wenn PHP in eine andere Applikation eingebettet wird? Es gibt definierte Initialisierungspunkte, in die sich eine Extension einhängen kann (bzw. muss), und eine threaded Umgebung ist nicht ganz problemfrei wenn es um Datenzugriff etc. geht. Auf jeden Fall interessante Einblicke, was PHP so beim „Start“ tut.

Weiterlesen »

Written by Michael Kliewe

April 28th, 2011 at 10:16 am

PHPStorm 60% günstiger! Bis zum 30.04.2011

with 51 comments

Als Ostergeschenk gibt JetBrains 50% Rabatt auf PHPStorm ab heute bis zum 30.04.2011. Zusammen mit meinem Gutschein über 20% ergibt das insgesamt 60% Rabatt! Statt 99€ nur noch 39€!

Die neuesten Features, die in 2.1 kommen werden, sind übrigens:

Außerdem ist ein Jira-Connector in Planung. PHPStorm rockt!

Written by Michael Kliewe

April 20th, 2011 at 2:56 pm

Posted in PHP

Tagged with ,

Ein eigener Zend_Auth_Adapter gegen einen IMAP Server

with 3 comments

Mit Hilfe von Zend_Auth kann man wunderbar Authentifizierungen durchführen, und dem Zend Framework liegen auch bereits einige Adapter bei, wie zum Beispiel DbTable, Digest, Http, InfoCard, Ldap und OpenId. In einem meiner Projekte wollte ich gegen einen IMAP-Server authentifizieren, jeder der einen IMAP-Account hat soll sich auf der Webseite einloggen können. Dazu habe ich einen kleinen Auth-Adapter geschrieben, den man so benutzt:

// authenticate against imap
$imapAdapter = new App_Auth_Adapter_Imap($this->_applicationIni->imap->host);

$imapAdapter->setIdentity($formData['LoginName'])
    ->setCredential($formData['LoginPassword']);

$result = $imapAdapter->authenticate();

if (!$result->isValid()) {
    // Authentication failed
} else {
    // Authentication successful
}

Der genutzte Adapter sieht so aus:

Weiterlesen »

Written by Michael Kliewe

April 19th, 2011 at 10:26 am

Posted in PHP

Tagged with , , ,