Skip navigation.

High Performance, High Scalability PHP is a Lie

Recently Friendster announced they were switching from JSP to PHP. The ridiculous rants that followed in the comments of the above link show how hard it is to understand performance. The key thing is not how good the technology can potentially be, but how productive and efficient your developers are with the technology they know.

A lot of people have said that PHP is shared nothing, is scalable, has high performance, and works well under heavy loads. I have to admit that it's a lie. OK, maybe a half-truth - no it is not scalable unless you employ a PHP guru.

When we talk about scalable PHP, we're talking about an ecosystem of Apache/PHP or IIS/FastCGI/PHP and a lot of other tools. I would recommend a knowledge of estoric HTTP and PHP stuff such as keepalives, opcodes and opcode caching, zend engine memory management, browser incompatibilities, proxying, database clusters, sql query tuning, networking latencies, writing C extensions, etc to develop powerful web apps. Very sophisticated stuff. It's no surprise that Yahoo, the biggest PHP adopter in the world, has an army of PHP gurus.

Similarly the best J2EE technology in the world will buy you a lousy unscalable web application if you don't have the equivalent Java expertise. And J2EE is even more complicated than the above PHP ecosystem.

To recap, to avoid any confusion caused by my eccentric headline, most web technologies that are popular today are scalable with good performance (perl, php, c, python, asp, java, cold fusion). But to achieve high performance and scalability is not easy - it won't happen just by running a software installer - you need talented people to achieve it. And the truth is not everyone is Spartacus.

Harry's point of view. George gets mad, then he gets even. Sterling concurs. New: Jeff Recaps