Es kam schon oft vor, dass ich unterwegs gerne einen Blick auf einen Server geworfen hätte. Wie habe ich mich deshalb gefreut, als vor ca. einem Jahr die erste SSH Software für das iPhone angekündigt wurde -- pTerm. Leider erwies sich diese Bezahlsoftware als nicht wirklich ergiebig. Die ersten Versuche zu Hause im WLAN waren zwar erfolgreich, unterwegs über edge wollte das ganze jedoch leider nicht funktionieren. Bis heute weiss ich nicht warum -- die pTerm Diskussionsgruppe war in dieser Hinsicht auch nicht wirklich hilfreich.
This morning I checked my feedburner stats and I got a message I should move my feeds over to Google, and so I did.I should have read Chris Shiflett's blog post first to prevent my feeds spamming the entire aggregated internet, in particular Planet-PHP.
The proliferation of multicore CPUs and the inability of our learned CPU vendors to squeeze many more GHz into their designs means that often the only way to get additional performance is by writing clever parallel software.
One problem we were having is that some of our batch processing jobs were taking too long to run. In order to speed the processing, we tried to split the processing file into half, and let a separate PHP process run each job.
In my previous post Easy Parallel Processing in PHP, I showed you how to implement parallel batch processing using PHP and a web server. In this post, I want to discuss partitioning your tasks so that they become easily parallelized.
The strategy I prefer is divide-and-conquer. This works by recursively breaking down a problem into two or more sub-problems of the same type, until these become simple (and fast) enough to be solved directly.
Apache is not a particularly fast web server. A single Apache server doesn't handle a mix of static and dynamic data particularly well. Ideally, static data such as gifs, pngs and html pages should be cached in memory for quick access; Apache doesn't do this. And the prefork design of Apache (where we have a simple reliable parent process managing multiple worker processes that do the real work) makes it exceptionally robust, but the overhead of having these parent and child processes makes things run slower.
We are happy to invite you to this year's php|tek conference, to be held May 19-22, 2009 in Chicago, Illinois, and hosted (as always) by the folks at php|architect.Join us to hear talks and tutorials on a variety of PHP subjects from PHP experts such as Ed Finkler, Sara Golemon, Chris Shiflett, Sebastian Bergmann, Derick Rethans, Stefan Priebsch, Christian Wenz and our mid-conference keynote by Andrei Zmievski on PHP6.
The seventh edition of the PHP Quebec Conference will take place in a few days, between March 4th and 6th, 2009. It will be held in Montreal, Canada. Don't miss out on this unique opportunity to learn more on latest development techniques with PHP, RIA, Frameworks and project management. Meet with PHP Community leaders such as: Zeev Suraski, Chris Shiflett, Andrei Zmievski, Sara Golemon, John Coggeshall and many more. With over 55 technical talks, 35 international speakers and multiple networking activities you are guaranteed to take your career one step ahead in a friendly environment.
Last weekend I was at FOSDEM'09, Free and Open-Source Developers European Meeting, in Brussels (Belgium). Together with co-founder Felix De Vliegher and co-organizer Patrick Allaert we were promoting the mission of PHPBelgium, the largest PHP user group in Belgium.