Symbulos Partners wrote:
Rasmus Lerdorf wrote:
You want to stay away from the threaded MPM's in Apache2.
Why?
Which versions would be recommended then? We would like to be able to use the new PHP object model, and at the same time use features like the possibility of running scriping languages using a lower rights users, as in apache 2.
How does Apache2 let you do that?
As far as threading goes, it is simply not a good idea for a large complex system. There are too many moving parts to ensure that everything will be threadsafe. Most of the parts are actually threadsafe, but the huge problem is that we don't have a clear picture of which libraries out there aren't, and it is nearly impossible to debug a thread-related race condition. These race conditions tend to only happen under heavy load and only in certain conditions so they aren't reproducable which makes our job of tracking them down that much harder. People have reported success with PHP under Apache2 with a threaded MPM so you can give it a try and see how it goes. It may work perfectly, or it may work perfectly for weeks and then suddenly fall over. Unless you really know what you are doing we are not going to be able to help you with any occasional crashes.
I am a big believer in keeping the base infrastructure as simple as possible. You are going to layer a lot of complexity on top of Apache and PHP in the form of your web applications. You want to make sure that your building blocks are rock solid so if you see a problem you can be confident that it is something you did wrong. If your base is shaky everything you build on top of it is going to be that much more unstable.
-Rasmus
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php