RE: Connection pinning (patch)

From: Henrik Nordstrom <henrik@dont-contact.us>
Date: Wed, 07 Jun 2006 05:29:15 +0200

ons 2006-06-07 klockan 07:59 +0800 skrev Steven Wilton:

> If the server fd is closed, the client pconnLookup will fail, and the client
> will re-connect.

Yes.

> The code in comm.c uses the timeout handler to cause the pconn to close when
> the client fd is closed. If the server connection has been closed, the
> timeout handler will be NULL, so there will be no work to do when the client
> fd closes. It also record which client fd each server fd has been pinned
> to, which will avoid any problems if the server fd is re-used on another
> request.

Right. See now.

> I have run tests, and can confirm that when proxies are set in the web
> browser, the same client-side fd will be used for multiple requests to
> different server-side fd's.

Odd.. but not unexpected.

> There are 2 clean ways to handle this, we can
> either shut down any existing pinned server connection if another request
> needs to be pinned to the same client fd, or allow multiple server fd's to
> be pinned to the same client fd.

My preference would be to shut down the other.. we should not open many
server side connections tied to a client side connection.. A resource
thing, not so much functionality or complexity.

Unfortunately your message came a little late and I have gone back to my
earlier pinning patch for 2.6 (with the needed small fixes). That
approach felt a bit simpler, being strictly designed for a 1-1 relation.
But I am not 100% sure which approach is best so we will keep yours
around on the devel site.

Regards
Henrik

Received on Tue Jun 06 2006 - 21:29:21 MDT

This archive was generated by hypermail pre-2.1.9 : Fri Jun 30 2006 - 12:00:02 MDT