Re: [PHP] Will PHP ever "grow up" and have threading?

[email protected] ("[email protected]")
Newsgroups php.general
Message-ID <[email protected]>
On 3/23/10 6:04 PM, Tommy Pham wrote:

> If throwing hardware at it won't work because of the above mentioned,
> then you would change the design right?  How long would that take?
> What if PHP has threads, how long would it take you implement threads
> with minor changes versus and overhaul of application design, coding,
> QA, etc... In summary, you're saying that PHP can not grow/evolve with
> business right?  If the company started small and want to use
> available open source solutions, then grow quickly because of their
> unique and quality products and services, and become enterprise level
> with-in a few years, what then?  Slow down business growth just so
> that IT can migrate everything to another language? Of all the
> enterprise applications I've seen, they used threads.
>
> Regards,
> Tommy

The word "enterprise" is meaningless in this context because it provides 
no context for the distinction.  What does "enterprise" mean?  Gets 
Captain Kirk to his next date?  Is OpenOffice.org's plugin download site 
enterprise?  Is Sony BMG enterprise?  The sites for the cities of London 
and Athens?  Whitehouse.gov?

That's just a couple of sites now running on Drupal, a particular 
single-threaded PHP application.  That's not counting the thousands of 
similar organizations running PHP (not even PHP-wrapping-custom-C like 
Yahoo) applications of various and sundry kinds.  (Wikipedia anyone?) 
PHP *is* in the enterprise and quite happy there.

"Not ready for the enterprise" is a totally meaningless statement. 
Similarly, if you cannot think of any way to scale an application that 
doesn't involve threads then I question your competence as a programmer. 
  Sure, threads can be one way to speed things up.  There are lots and 
lots of others that may be more or less appropriate depending on the 
circumstances.  Threads have their own scaling issues, namely they have 
to live within the same process on the same box.  That means when you 
hit the maximum size of your server, you're done.  That doesn't mean 
threads are bad, but they have their trade-offs just like everything 
else does.

But let's consider what adding threads to PHP would take.  That would 
mean making PHP a shared-memory architecture, so that different requests 
now operated in the same memory space.  That means RAM-based 
persistence.  That means needing to write thread-safe PHP libraries. 
(Not the ones in C; I mean the millions of lines of code of PHP already 
out there.)

In short, adding threading support to PHP means PHP is no longer PHP. 
It's Java with dollarsigns.  It's a complete and total rewrite of the 
entire language runtime and environment, and all of the code build atop it.

The idea that you could "just add threads" to PHP and make it 
"enterprise-ready" is so naive it's mind boggling.

--Larry Garfield
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.