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
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php