Re: Re: how dod you get to do multiple mysql queries concurrently?

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

 



Richard Lynch schreef:

On Fri, January 25, 2008 1:45 pm, Jochem Maas wrote:
Richard Lynch schreef:
On Fri, January 25, 2008 11:33 am, Floor Terra wrote:
I know how to do multiple queries - the key issue in my
question
was how to do them concurrently (i.e. in parallel).
So you want to make PHP multithreaded???
No, just the mysql queries.
Try pcntl_fork() to create a child process for each query.
Each child can make it's own MySQL connection.
Do *NOT* do this in a web-server environment, unless you have
EXTENSIVELY and EXHAUSTIVELY tested all your PHP extensions for
thread-safety!
I agree about the don't do that part - but what has process forking
got to do with thread safety?

AFAIK you shouldn't do that because it madness to fork a complete
apache
process.

Process forking has EVERYTHING to do with thread safety.

Whatever is going to go wrong in a threaded environment is going to
also go wrong when you fork the process, almost for sure.

"Global" variables (or other resources) will not get split/duplicated
correctly, as fork has NO IDEA what needs separating.

So you suddenly have two processing pounding data in/out of what each
of them think is an exclusive resource/memory-address/whatever...

shows what I know :-)


Baby go Boom!


--
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