You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by David Wheeler <da...@kineticode.com> on 2004/09/24 18:14:02 UTC

Preferred MPM?

Hi All,

I'm finally getting 'round to installing Apache 2 and wanted to install 
mod_perl while I was at it (since there is increasing interest in 
getting Bricolage running on mod_perl 2!). I've been using the worker 
MPM on Ask's advice, but looking at the docs, it appears that I either 
have to use prefork or recompile Perl with ithreads.

Since there is no recommendation one way or another in the docs, I was 
wondering if there is a preferred approach? It looks like that's the 
old Apache 1.x forking model...

Oh, I just saw this in the Apache 2 docs:

             * If you are building on FreeBSD, be aware that threads will
               be disabled and the prefork MPM will be used by default,
               as threads do not work well with Apache on FreeBSD.  If
               you wish to try a threaded Apache on FreeBSD anyway, use
               "./configure --enable-threads".

So I guess I'm using prefork regardless. But anyway, I was looking for 
recommendations, since I'll build it on other platforms, and I seem to 
recall Stas saying that threads weren't working so well (or was that 
just on Windows)?

Clarifications greatly appreciated.

Regards,

David


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by Garrett Rooney <ro...@electricjellyfish.net>.
David Wheeler wrote:

> Thanks, Vivek. Perhaps I'll ask my hosting provider for an upgrade. Is 
> FreeBSD 5 stable now?

5.3 (the first stable release to come from the 5.x branch) will be out 
real soon now, but it's not out yet.  See 
http://www.freebsd.org/releases/5.3R/schedule.html for details.

-garrett

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by Vivek Khera <kh...@kcilink.com>.
On Sep 24, 2004, at 1:45 PM, David Wheeler wrote:

> Thanks, Vivek. Perhaps I'll ask my hosting provider for an upgrade. Is 
> FreeBSD 5 stable now?
>

FreeBSD 5.3 scheduled for October 10 is supposed to be the new "stable" 
branch of FreeBSD.  I have one production server running 5.2.1 right 
now and it is pretty good.  I have one testing server runing 5.3-BETA5 
and it has one fatal error on some reboots.

Upgrading won't be easy without a significant amount of downtime.  That 
is, it is not a trivial in-place upgrade to jump from the 4.x line to 
the 5.x line.

Vivek Khera, Ph.D.
+1-301-869-4449 x806


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by David Wheeler <da...@kineticode.com>.
On Sep 24, 2004, at 10:16 AM, Vivek Khera wrote:

> On FreeBSD 4 threads suck.  They don't just suck, they blow too.[1]
>
> I've never had anything but trouble with them.  They are user-land 
> threads, so must cooperate for any kind of concurrency.  I'm trying to 
> get Postgres to replicate using Slony-I, and that is a threaded app.  
> On FreeBSD 4.10, it locks up inside some threading library routine.  
> On FreeBSD 5 it works fantascitally.  I hear on FreeBSD 4.9 it also 
> works.
>
> FreeBSD 5 threads are awesome.  They are scheduled at the kernel level 
> and offer very good concurrency.

Thanks, Vivek. Perhaps I'll ask my hosting provider for an upgrade. Is 
FreeBSD 5 stable now?

David


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by Vivek Khera <kh...@kcilink.com>.
On Sep 24, 2004, at 12:55 PM, David Wheeler wrote:

> And on a slightly related note, just how poorly do threads work on 
> FreeBSD? I'm setting up a Subversion server and would like to use 
> ViewCVS, but mod_python (/me throws salt over his shoulder) requires 
> --enable-threads. Anyone here got much experience with Apache2 on 
> FreeBSD with threads enabled? Any real problems?
>

On FreeBSD 4 threads suck.  They don't just suck, they blow too.[1]

I've never had anything but trouble with them.  They are user-land 
threads, so must cooperate for any kind of concurrency.  I'm trying to 
get Postgres to replicate using Slony-I, and that is a threaded app.  
On FreeBSD 4.10, it locks up inside some threading library routine.  On 
FreeBSD 5 it works fantascitally.  I hear on FreeBSD 4.9 it also works.

FreeBSD 5 threads are awesome.  They are scheduled at the kernel level 
and offer very good concurrency.


[1]: when I was in gradual school at Duke, we had a saying "The wind 
don't blow in Durham, it sucks!".


Vivek Khera, Ph.D.
+1-301-869-4449 x806


Re: Preferred MPM?

Posted by David Wheeler <da...@kineticode.com>.
On Sep 24, 2004, at 9:14 AM, David Wheeler wrote:

> Oh, I just saw this in the Apache 2 docs:
>
>             * If you are building on FreeBSD, be aware that threads 
> will
>               be disabled and the prefork MPM will be used by default,
>               as threads do not work well with Apache on FreeBSD.  If
>               you wish to try a threaded Apache on FreeBSD anyway, use
>               "./configure --enable-threads".

And on a slightly related note, just how poorly do threads work on 
FreeBSD? I'm setting up a Subversion server and would like to use 
ViewCVS, but mod_python (/me throws salt over his shoulder) requires 
--enable-threads. Anyone here got much experience with Apache2 on 
FreeBSD with threads enabled? Any real problems?

Thanks,

David


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by David Wheeler <da...@kineticode.com>.
On Sep 24, 2004, at 12:46 PM, Stas Bekman wrote:

> Threaded mpms work just fine when serving static pages. There are all 
> kind of problems when Perl is involved. Some of the problems are 
> getting resolved, others are still there. It's probably the best to 
> develop with prefork, at least because debugging processes is 
> possible, debugging threads is not always the case. Though you should 
> check that your code works with threaded mpms as well. Your code 
> shouldn't take advantage of prefork environment, so users who are 
> stuck with threaded mpms can use it too.

Many thanks, Stas, that was the information I was looking for.

Regards,

David


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: Preferred MPM?

Posted by Stas Bekman <st...@stason.org>.
David Wheeler wrote:
> Hi All,
> 
> I'm finally getting 'round to installing Apache 2 and wanted to install 
> mod_perl while I was at it (since there is increasing interest in 
> getting Bricolage running on mod_perl 2!). I've been using the worker 
> MPM on Ask's advice, but looking at the docs, it appears that I either 
> have to use prefork or recompile Perl with ithreads.
> 
> Since there is no recommendation one way or another in the docs, I was 
> wondering if there is a preferred approach? It looks like that's the old 
> Apache 1.x forking model...
[...]
> So I guess I'm using prefork regardless. But anyway, I was looking for 
> recommendations, since I'll build it on other platforms, and I seem to 
> recall Stas saying that threads weren't working so well (or was that 
> just on Windows)?

Threaded mpms work just fine when serving static pages. There are all kind 
of problems when Perl is involved. Some of the problems are getting 
resolved, others are still there. It's probably the best to develop with 
prefork, at least because debugging processes is possible, debugging 
threads is not always the case. Though you should check that your code 
works with threaded mpms as well. Your code shouldn't take advantage of 
prefork environment, so users who are stuck with threaded mpms can use it too.

-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org