You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Sander Striker <st...@apache.org> on 2006/02/20 17:50:42 UTC

Serf, WAS: Re: AW: AW: svn commit: r378032 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c modules/proxy/proxy_util.c

Plüm wrote:
> I think the SSL problem is caused by throwing away the conn_rec
> entry for the backend and create a new one for each request.
> That does not sound right, but I admit that keeping it must be
> carefully examinated due to several possible issues. Two
> that I can see immeditately are:
> 
> 1. memory pools
> 2. filters
> 
> For me that puts the question on the table if using "fake" request_rec
> and conn_rec structures for the backend connections is really a good
> idea. This "misuse" already leads to problems in other areas.
> But reworking this will take much time and work and is only mid to
> long term. Might be easier if we have a http / https client library
> as part of httpd or apr-util.

Something like this maybe:

  http://svn.webdav.org/repos/projects/serf/trunk/

It started out to become apr-serf, made a jump to the short-lived
Commons, and ended up at webdav.org.  There is a current effort
by Justin Erenkrantz to get Serf completed, or at least complete
enough to complete ra_serf, a Subversion remote access library.
I expect that with a couple of months the churn is gone, and its
API stable enough to use here in HTTP Server land.

Sander

Re: Serf, WAS: Re: AW: AW: svn commit: r378032 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c modules/proxy/proxy_util.c

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
On 2/20/06, Sander Striker <st...@apache.org> wrote:
> > For me that puts the question on the table if using "fake" request_rec
> > and conn_rec structures for the backend connections is really a good
> > idea. This "misuse" already leads to problems in other areas.
> > But reworking this will take much time and work and is only mid to
> > long term. Might be easier if we have a http / https client library
> > as part of httpd or apr-util.
>
> Something like this maybe:
>
>   http://svn.webdav.org/repos/projects/serf/trunk/
>
> It started out to become apr-serf, made a jump to the short-lived
> Commons, and ended up at webdav.org.  There is a current effort
> by Justin Erenkrantz to get Serf completed, or at least complete
> enough to complete ra_serf, a Subversion remote access library.
> I expect that with a couple of months the churn is gone, and its
> API stable enough to use here in HTTP Server land.

Yup.

I'm currently 'sponsored' by Google to produce ra_serf - so that's my
short-term focus.  If you don't follow dev@subversion, ra_serf + Serf
can now do a checkout from a mod_dav_svn setup:

http://svn.haxx.se/dev/archive-2006-02/1025.shtml

Long-term, Greg and I and others who contributed to the early days of
Serf have always left open the possibility of closing the cycle with
httpd - both as for a replacement for mod_proxy's client code and as
another (ideally more efficient) design to do filters across httpd. 
However, that's not in scope for me to do in the next few months.

Serf's mailing list is at: http://mailman.webdav.org/mailman/listinfo/serf-dev/

(You'll find some familiar faces posting there.   *duck*)

Enjoy.  -- justin

Re: mod_serf, WAS Re: Serf, WAS: Re: AW: AW: svn commit: r378032

Posted by Mads Toftum <ma...@toftum.dk>.
On Mon, Feb 27, 2006 at 11:03:47AM -0500, Brian Akins wrote:
> I can thinks of several things I have hacked now that would be great 
> with a mod_serf.  It would be nice if there was a way to just get back a 
> bucket brigade from it, or something similar.
> 
Absolutely - although that might belong in apr.

vh

Mads Toftum
-- 
`Darn it, who spiked my coffee with water?!' - lwall


Re: mod_serf, WAS Re: Serf, WAS: Re: AW: AW: svn commit: r378032

Posted by Brian Akins <ba...@web.turner.com>.
Mads Toftum wrote:
>  Making a
> provider out of it might be good too - I can sertainly see cases where
> other modules might want to make http requests without having to go the
> proxy way.

I can thinks of several things I have hacked now that would be great 
with a mod_serf.  It would be nice if there was a way to just get back a 
bucket brigade from it, or something similar.


-- 
Brian Akins
Lead Systems Engineer
CNN Internet Technologies

Re: mod_serf, WAS Re: Serf, WAS: Re: AW: AW: svn commit: r378032

Posted by Mads Toftum <ma...@toftum.dk>.
On Sat, Feb 25, 2006 at 10:14:37AM -0800, Paul Querna wrote:
> I had some time after watching BSG last night... so I wrote it.
> 
> mod_serf:
> http://people.apache.org/~pquerna/serf-stuff/mod_serf.c
> 
> It also requires a patch to serf right now:
> http://people.apache.org/~pquerna/serf-stuff/serf-headers-do.patch
> 
> It has lots of problems still, but it works for a basic reverse proxy:
> 
> <Location />
>    SerfPass http://www.example.com/
> </Location>
> 
I like the idea - but would like to see it take on a few ideas from
mod_dbd. In the SerfPass/ProxyPass situation it would be good to keep a
pool of open connections (and having a way to decide how many). Making a
provider out of it might be good too - I can sertainly see cases where
other modules might want to make http requests without having to go the
proxy way.

vh

Mads Toftum
-- 
`Darn it, who spiked my coffee with water?!' - lwall


mod_serf, WAS Re: Serf, WAS: Re: AW: AW: svn commit: r378032

Posted by Paul Querna <ch...@force-elite.com>.
Sander Striker wrote:
> Something like this maybe:
> 
>   http://svn.webdav.org/repos/projects/serf/trunk/
> 
> It started out to become apr-serf, made a jump to the short-lived
> Commons, and ended up at webdav.org.  There is a current effort
> by Justin Erenkrantz to get Serf completed, or at least complete
> enough to complete ra_serf, a Subversion remote access library.
> I expect that with a couple of months the churn is gone, and its
> API stable enough to use here in HTTP Server land.

I had some time after watching BSG last night... so I wrote it.

mod_serf:
http://people.apache.org/~pquerna/serf-stuff/mod_serf.c

It also requires a patch to serf right now:
http://people.apache.org/~pquerna/serf-stuff/serf-headers-do.patch

It has lots of problems still, but it works for a basic reverse proxy:

<Location />
    SerfPass http://www.example.com/
</Location>

-Paul