httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wayne S. Frazee" <>
Subject Re: More musings about asynchronous MPMs Re: Event MPM
Date Tue, 26 Oct 2004 15:14:55 GMT
I dont claim to be a java expert but I use apache extensively and figure i 
might as well toss in my $.02   

Frankly, there are two reasons I hate java.  

1) Its a resource hog.  Running on a JRE or Virtual Machine setup provides an 
extra layer of resource requirements that a similar C, C++, etc program would 
not really have.

2) Its relatively slow in comparison to many modern languages.  Mostly due to 
item 1 and the way that the JRE does cleanup, etc.

I recognize that there are also several positive effects that moving to a java 
based MPM would have.   For me, I have recently been subjected repeatedly to 
the mantra of one of my co-workers: "Use the best tool for the job at hand."  
Frankly, for MPMs whose main requirement is speed, efficiency, and a large 
level of scalability, I really dont think that Java is going to be a more 
useful tool in executing highly scalable MPM designs than C, C++, or some 
other languages would be.

Just my humble opinion, take it or leave it for what its worth.

Wayne S. Frazee
"Any sufficiently developed bug is indistinguishable from a feature."On Monday

 25 October 2004 15:51, Brian Pane wrote:
> There are a lot of reasons *not* to do so, mostly related to all the
> existing httpd-2.0 modules
> that wouldn't work.  The things that seem appealing about trying a
> Java-based httpd, though,
> are:
> - The pool memory model at the core of httpd-1.x and -2.x isn't well
> suited to MPM
> designs where multiple threads need to handle the same
> connection--possibly at the same
> time, for example when a handler that's generating content needs to push
> output buckets
> to an I/O completion thread to avoid having to block the (probably
> heavyweight) handler
> thread or make it event-based.  Garbage collection on a per-object basis
> would be a lot
> easier.
> - Modern Java implementations seem to be doing smart things from a
> scalability perspective,
> like using kqueue/epoll/etc.
> - And (minor issue) it's a lot easier to refactor things in Java than in
> C, and I expect that
> building a good async MPM that handles dynamic content and proxying
> effectively will
> require a lot of iterations of design trial and error.
> Brian

View raw message