On 8/8/05, Rasmus Lerdorf <[EMAIL PROTECTED]> wrote:
> > 3. Problems with thread-safety of modules
> 
> You missed the most serious one.  Thread safety problems in random
> libraries you link in and we have absolutely no control over those.

OK, I am confused. I always thought (an assumption with nothing to
back it up, now that I think about it) that the core part of PHP was
thread safe and that it was the third party libraries included from
_extensions_ that were at issue.

So if I used mysqli then it was at the mercy of the mysql library. So
if the mysqli maintainer knew that that library was safe and their
extension was safe then they could mark it as safe. All others would
go through a single mutex, etc...

But if PHP core uses a library and has no idea if it is safe or not
(like glibc, though would run under such a system?) then I get your
point. I hadn't considered it before. I suppose that is why MySQL
statically links in such things that it knows works, not leaving
anything to chance.

I guess PHP's greatest strength is also its weakness, PHP can never
realistically be thread safe and we'll all just deal with it.

Really, it has never been an issue before. I'm not a flag waver for
threads! I've been perfectly happy with PHP4 and Apache1. It is just
the Keep-Alive and connection pooling issues would more easily work
themselves out in a threaded environment. Its a clean solution (from
the point of view of using PHP, developing that is a different issue).

I suppose adding in layers to fix these issues is the best direction
to take, like separate connection pooling software to databases and
another separate application to the same in reverse with keep-alive (a
proxy would work here). With both "bookends" running on the same
server and using domain sockets to PHP, it should work fine and is no
longer a subject for this list. :)

> My stuff is far bigger and busier than yours

I know my name can be easily traced to a website I own that only gets
about 10M pv/day but I also work as a consultant for another that gets
an order of magnitude more. So perhaps you do get more then them and
get 1B pv/day and your dad can beat up my dad. Ug. Strike that. I'm
just frustrated and stressed. (My own website doesn't even need the db
connection pooling just yet. Though it could use Keep-Alive..)

I'll leave this discussion only with this:

I love PHP and appreciate what everyone has contributed over the
years. Thanks! (And now I'll shut up.)

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to