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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tommy Pham wrote:

> As such, let's dissect what you mentioned:
> 
> 1) PHP with internal thread support
> 2) PHP with external C/C++ thread support

That's not quite what I mentioned, but I'll accept it for the sake of
argument. 

> * Performance - having external thread support, now you have to call
> an extension (more memory usage and CPU cycles). 

Tommy, you are already using millions of more cycles by running PHP
instead of C.  It's a reasonable trade-off of course, but "using more
cycles" is not a valid counter-argument. 

> If you happen to have a C/C++ guru who can then code that thread
> support into PHP extension, wouldn't it still perform better at the
> core vs as an extension because it's not talking to a 'middle man'? 

It's another trade-off Tommy - you run two separate processes, talking
to each other over TCP (for instance) to gain 1) performance and 2)
flexibility/scalability.  You gain performance by having processes that
can be independently scheduled by the OS, and you gain flexibility by
being able to move a process to another box (for scalability). You pay
for that with a few thousand cycles.  When you decide to use a database
(e.g. mysql) you also make a trade-off - well-managed data, a
structured query-language and some overhead vs. doing it all in your
own code. 

> * Portability - if you're currently running PHP on Windows, but manage
> to convince management to switch to *BSD/Linux, then you'd have to
> rewrite that external thread support. 

If portability is a concern, I'd make sure my threaded backend would run
on all the platforms I could envision.  Portability is merely one of
many factors that affect choice of programming language. 

> * Managability - should your need to upgrade PHP for either bug fix,
> new features you'd want to implement to add more functionality to your
> site, will that then break your custom external solution?  How much
> more manageable is it if it's done under 1 language versus 2+?

I said it yesterday already - having a single implementation language IS
a positive, but it may not always be possible due to requirements. 



-- 
Per Jessen, Zürich (12.3°C)


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux