httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan Bloom <>
Subject Re: MPM re-write for network logic
Date Tue, 13 Nov 2001 17:20:18 GMT
On Tuesday 13 November 2001 01:24 am, Greg Stein wrote:
> On Mon, Nov 12, 2001 at 06:55:43PM -0800, Ryan Bloom wrote:
> >...
> > I am trying to remove the network logic from the MPMs, so that modules
> > can implement different transport layers.  I am looking at using a couple
> > of hooks to accomplish this.  The problem is that Windows just doesn't
> > fit into this model at all.
> I think your original premise is incorrect.
> MPMs are all about waiting on one or more sockets, accepting connections,
> handling those connections, and mapping units of work to workers. By its
> very nature, it depends upon the sockets.
> Apache as a whole should not know about the socket (only the core filters),
> but the MPM definitely should. It is the beast which maps *sockets* to
> *workers*. It has to know.

The problem is that other modules need to be able to insert socket-like
entities to the list of sockets that the MPM will listen to.  My goal isn't to 
remove sockets from the MPM, but rather to standardize how MPMs deal with
sockets.  In this case, I am trying to move everything to a pollset.  In time, I
would like to remove the listensocks array, but I'm not at that point yet.

MPMs will always control the threads that are listening to sockets, but the
actual accepting needs to move to a hook, so that other modules can implement
their own acceptors.  By moving this into the core, we can eliminate a lot of
duplicate code that has fallen out of synch.

Ryan Bloom
Covalent Technologies

View raw message