You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Sam Magnuson <sm...@aventail.com> on 2000/04/18 23:32:18 UTC
mod_proxy port process
All -
I've done some work on mod_proxy recently massaging it to work with the 2.0
architecture. Most changes have been in design and implementation rather than
actual end-user changes. After porting the proxy to 2.0, I then split the
caching functionality off from the proxy. The major motivation for this was
other proxies can use this caching mechanism as is, however it also buys apache
the ability to plug in new caching backends, and just have to hook the
initialization call, this means I'm submitting changes to mod_proxy (the port
to 2.0 and incorporating the new caching facilities), a new modules file_cache
which is basically chopped up file caching from mod_proxy to work with the new
cache interface, and finally a caching interface (attached), and routines to
bind the caching modules and the interface together.
I'm hoping to get comments on any part of this. I have a separate patch for the
mod_proxy port to 2.0 if people are interested in only that, however I'd really
like to see some (if not all) of the caching pieces make it into apache.
All diffs have been against apache-2.0a2. I've attached the caching interface
for comment to this mail, and have placed the actual patches at:
http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a2v1.tar.gz
//Sam Magnuson
----------------------------------
E-Mail: Sam Magnuson <sm...@aventail.com>
Date: 18-Apr-00
Time: 14:32:18
----------------------------------
Re: mod_proxy port process
Posted by Chuck Murcko <ch...@topsail.org>.
Graham Leggett wrote:
>
> Sam Magnuson wrote:
>
> > All diffs have been against apache-2.0a2. I've attached the caching
> > interface
> > for comment to this mail, and have placed the actual patches at:
> >
> > http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a2v1.tar.gz
>
> Is it possible to get a patch against apache_2.0a3? There are a number
> of rejects when I tried to apply the patch just now to alpha 3.
>
Yeah, that's part of what I'n trying to roll up this week. 8^(
--
Chuck
Chuck Murcko
Topsail Group
chuck@topsail.org
Re: mod_proxy port process
Posted by Chuck Murcko <ch...@topsail.org>.
2 cool! That saves me an hour or two. 8^)
Once this works against a3, I will test against the current HEAD. Since
I work for COvalent now, I will be able to talk with Ryan about 2.0
coming changes and keep things sync'ed up pretty well. I see him at
least one week/month when I travel to SF.
BTW, here's an oldie but goodie I've found useful for keeping track of
things in large codebases, now it's been released by SCO as "open
source" for Linux.
http://cscope.sourceforge.net/
You guys might recognize it.
Sam Magnuson wrote:
>
> Graham Leggett <mi...@sharp.fm> writes:
>
> > Sam Magnuson wrote:
> >
> > > All diffs have been against apache-2.0a2. I've attached the caching
> > > interface
> > > for comment to this mail, and have placed the actual patches at:
> > >
> > > http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a2v1.tar.gz
> >
> > Is it possible to get a patch against apache_2.0a3? There are a number
> > of rejects when I tried to apply the patch just now to alpha 3.
> >
>
> I've posted
> http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a3v2.tar.gz
> today that should work for anyone interested in the mod_proxy for 2.0, Chuck
> is working on integrating everything mod_proxy'ish into something that'll
> (hopefully) build on a3 I believe.
>
> //Sam
>
> > Regards,
> > Graham
> > --
> >
>
> --
> Sam Magnuson <sm...@aventail.com>
--
Chuck
Chuck Murcko
Topsail Group
chuck@topsail.org
Re: mod_proxy port process
Posted by Sam Magnuson <sm...@aventail.com>.
Graham Leggett <mi...@sharp.fm> writes:
> Sam Magnuson wrote:
>
> > All diffs have been against apache-2.0a2. I've attached the caching
> > interface
> > for comment to this mail, and have placed the actual patches at:
> >
> > http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a2v1.tar.gz
>
> Is it possible to get a patch against apache_2.0a3? There are a number
> of rejects when I tried to apply the patch just now to alpha 3.
>
I've posted
http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a3v2.tar.gz
today that should work for anyone interested in the mod_proxy for 2.0, Chuck
is working on integrating everything mod_proxy'ish into something that'll
(hopefully) build on a3 I believe.
//Sam
> Regards,
> Graham
> --
>
--
Sam Magnuson <sm...@aventail.com>
Re: mod_proxy port process
Posted by Graham Leggett <mi...@sharp.fm>.
Sam Magnuson wrote:
> All diffs have been against apache-2.0a2. I've attached the caching
> interface
> for comment to this mail, and have placed the actual patches at:
>
> http://libre.aventail.com/~smagnuson/sam-cache+proxy+apache_2.0a2v1.tar.gz
Is it possible to get a patch against apache_2.0a3? There are a number
of rejects when I tried to apply the patch just now to alpha 3.
Regards,
Graham
--
Re: mod_proxy port process
Posted by sh...@esdev.net.
On Mon, May 01, 2000 at 02:18:58AM -0400, Sam Tregar wrote:
> On Tue, 18 Apr 2000, Sam Magnuson wrote:
>
> > The major motivation for this was other proxies can use this caching
> > mechanism as is, however it also buys apache the ability to plug in
> > new caching backends, and just have to hook the initialization call,
> > this means I'm submitting changes to mod_proxy (the port to 2.0 and
> > incorporating the new caching facilities), a new modules file_cache
> > which is basically chopped up file caching from mod_proxy to work with
> > the new cache interface, and finally a caching interface (attached),
> > and routines to bind the caching modules and the interface together.
>
> Very interesting. I recently did some work with shared memory caching,
> producing the Perl module IPC::SharedCache. Do you think there would be
> value in a shared memory caching interface? If so I think this would be a
> project I would be interested in pursuing. I'll take a look at your patch
> the next chance I get.
In a word... YES! This is precisely the piece that I need for any
sort of functionality in 1.3.x . Or for any setup that is using
process seperations..., I'm not sure about how Apache 2.0 handles
stuff (excuse my naivety). In any event..., I for one would be
interested in such a mechanism because that is the precise quandry
that I'm in right now with setting up async i/o. I need to pass full
requests either out of cache, or "one time deals" into other
processes, which means either "shared memory" or file i/o (mmaped)
based..., which is just "not good". I was planning on doing this
myself, but if you're planning to implement anything along these lines
please contact me and we'll get together on this.
As an aside, if anyone else has any ideas to my present quandry...,
how to transmit data between processes, I'd be more than happy to hear
your suggestions. Obviously it would be silly to socket the whole
thing from one process to the other... very inefficient, but shared
memory pages seem to be what I see as an acceptable solution.
(Obviously in the case of threads, this doesn't really matter)
Something really abstract..., so the other modules don't have to know
anything about it. Something like mod_async_send_data(someptr*,
int typeofstorage, blah), that would take care of the transfer
mechanism (shmget's or whatever), notify the thread there is another
"client" to take care of, and do whatever preprocessing necessary. (Via
some utility functions, not all that stuff just globbed into that one
function) Oh yes, and set the ownership of the fd..., duh.
Thanks,
Shane.
>
> -sam tregar
>
>
>
Re: mod_proxy port process
Posted by Sam Tregar <sa...@tregar.com>.
On Tue, 18 Apr 2000, Sam Magnuson wrote:
> The major motivation for this was other proxies can use this caching
> mechanism as is, however it also buys apache the ability to plug in
> new caching backends, and just have to hook the initialization call,
> this means I'm submitting changes to mod_proxy (the port to 2.0 and
> incorporating the new caching facilities), a new modules file_cache
> which is basically chopped up file caching from mod_proxy to work with
> the new cache interface, and finally a caching interface (attached),
> and routines to bind the caching modules and the interface together.
Very interesting. I recently did some work with shared memory caching,
producing the Perl module IPC::SharedCache. Do you think there would be
value in a shared memory caching interface? If so I think this would be a
project I would be interested in pursuing. I'll take a look at your patch
the next chance I get.
-sam tregar