|
/
Zope
/
Apsis
/
Pound Mailing List
/
Archive
/
2004
/
2004-08
/
Client timeout vs. backend timeout
[
RE: Pound and ASP on IIS / "John D" ... ]
[
Security config / "Dean Maunder" ... ]
Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-24 17:09:23 |
[ FULL ]
|
Howdy all,
We discovered an interesting issue yesterday. I have mentioned once before that
we were seeing periodic slowness when traffic was going through Pound, we found
what was causing it. I am not sure this is a bug, it may be that it is supposed
to work this way. The slowness occures when the Client timeout in Pound is set
lower then then Backend's "client" timeout. In Apache and Apache2 this is
called KeepAliveTimeout. In Pound the default is 10 and in Apache it is 15.
Here is what happens, this only affects HTTP/1.1 connections:
The browser (I am using Mozilla) makes its initial request and gets a response.
If the server allows the connection to remain open (which pound will unless you
configure it otherwise), the browser will stay connected to the server for as
long as it can.
If the browser tries to re-use that connection between the two time outs (in
this case between 10 and 15 seconds) after the origional response, there will
be no response for the remaining amount of time between the two timeouts plus 5
seconds (I have no explination for this extra 5 seconds).
However, if the browser does not try to re-use the connection untill the
longest timeout, there is no delay.
Example: Browser requests /index.html. 11 seconds after the response user
clicks refresh/reload, the user sees a 9 second delay.
Example 2: Browser requests /index.html. 14 seconds after the response user
clicks refresh/reload, the user sees a 6 second delay.
Example 3: Browser requests /index.html. 15 seconds after the response user
clicks refresh/reload, the user sees no delay.
I took us hours to find this problem yesterday so my explination might be
leaving something out.
We found that if the Client timeout in Pound is the same or grater then the
backend, there is no delay. It doesn't seem like this should be necessary, I
don't think Pound should behave this way.
I have duplicated this issue on both Mandrake 9.2 and 10.0 (2.4 kernel and 2.6
kernel). It happens every time I try it.
Thanks for your thoughts on this matter.
John D.
|
|
|
Re: Client timeout vs. backend timeout
Robert Segall <roseg(at)apsis.ch> |
2004-08-25 13:30:39 |
[ FULL ]
|
On Tuesday 24 August 2004 17.09, John D wrote:[...]
This sounds really interesting, but I am unable to replicate the behaviour - I
don't see it no matter what I do. Could somebody else on the list confirm it?
A few remarks:
- are you sure you use the latest Pound-current?
- did you observe this with more than one type of browser (for example IE has
some known issues with closing the file descriptors)?
- where did you get the defaults from? AFAIK the Pound defaults are Client 10
and Server 0 (i.e. infinite).[...]
|
|
|
Re: Client timeout vs. backend timeout
Thierry Coopman <thierry(at)keytradebank.com> |
2004-08-25 13:40:03 |
[ FULL ]
|
Hi,
the previous 'Pound on ASP and IIS' thread together with this keepalive
issue could maybe explain the so called 'slowness' my users expierience.
I had the NoHTTP11 set to 2 to just let IE users use HTTP/1.0 instead of
HTTP/1.1, all other capable browsers would use HTTP/1.1.
The users complaining about the speed are users using Safari on Mac,
Mozilla or Firefox on Mac and Windows, but no IE users. We have about
95% IE users so if we would have an issue like this we would have a lot
of complains, and we only get a remark from time to time...
I upgraded to the latest -current now, and I disabled HTTP/1.1 for
everybody. I asked the users with complains (my boss for example) to let
me know if it's better now. My impression was positive, but I rarely use
the site myself :)
John D wrote:
[...]
[...]
|
|
|
RE: Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-25 16:29:29 |
[ FULL ]
|
I didn't explicitly mention this in my message. Yes, disabling http 1.1 does
also solve the problem. It just seemed more eligant to me to make the Client
timeout in Pound the same as the backends.
John D.
********** Original Email *********
** To: pound(at)apsis.ch
** From: Thierry Coopman <thierry(at)keytradebank.com>
** Date: Wed, 25 Aug 2004 13:40:03 +0200
**********
Hi,
the previous 'Pound on ASP and IIS' thread together with this keepalive
issue could maybe explain the so called 'slowness' my users expierience.
I had the NoHTTP11 set to 2 to just let IE users use HTTP/1.0 instead of
HTTP/1.1, all other capable browsers would use HTTP/1.1.
The users complaining about the speed are users using Safari on Mac,
Mozilla or Firefox on Mac and Windows, but no IE users. We have about
95% IE users so if we would have an issue like this we would have a lot
of complains, and we only get a remark from time to time...
I upgraded to the latest -current now, and I disabled HTTP/1.1 for
everybody. I asked the users with complains (my boss for example) to let
me know if it's better now. My impression was positive, but I rarely use
the site myself :)
John D wrote:
[...]
[...]
|
|
|
RE: Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-25 16:44:26 |
[ FULL ]
|
Hi,
We are useing the latest pound-current (the one that fixed our other problem:
302 status with content).
We saw it all browsers accept IE, but remember we have http 1.1 disabled for
IE. Disabling http 1.1 for everybody also "solves" this problem. For reference
we tried it in Mozilla, FireFox, Camino and Safari (that I know for sure, there
were probably others).
The defaults I used in my example came from what I know. I know that Pound uses
a Client timout of 10. And the stock timeout in Apache is 15. Remeber the
backend timeout I am referring to is not the Pound "Server" timeout, it is the
actual timeout configured in the Backend software, in our case Apache. We never
touched the "Server" timeout setting in Pound. Here is the top portion of our
Pound config:
---------------------
User nobody
Group nogroup
ExtendedHTTP 1
LogLevel 2
Client 15
---------------------
The "Client 15" was added to workaround this issue. Bofore this, there was no
Client entry in our config.
Thanks for your time.
John D.
********** Original Email *********
** To: pound(at)apsis.ch
** From: Robert Segall <roseg(at)apsis.ch>
** Date: Wed, 25 Aug 2004 13:30:39 +0200
**********
This sounds really interesting, but I am unable to replicate the behaviour - I
don't see it no matter what I do. Could somebody else on the list confirm it?
A few remarks:
- are you sure you use the latest Pound-current?
- did you observe this with more than one type of browser (for example IE has
some known issues with closing the file descriptors)?
- where did you get the defaults from? AFAIK the Pound defaults are Client 10
and Server 0 (i.e. infinite).
On Tuesday 24 August 2004 17.09, John D wrote:[...]
[...]
|
|
|
Re: Client timeout vs. backend timeout
Robert Segall <roseg(at)apsis.ch> |
2004-08-25 18:04:03 |
[ FULL ]
|
On Wednesday 25 August 2004 16.44, John D wrote:[...]
OK, one more question: does this occur only with HTTPS or do you see it also
with HTTP?[...]
|
|
|
RE: Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-25 19:45:50 |
[ FULL ]
|
Hi,
We use primarily HTTPS so I hadn't checked regular HTTP. I changed our config
back (so there was no Client timeout specified), verified the problem in HTTPS
(it is still there). I then tried to replicate it in regular HTTP. I cannot. So
aparently it is only a problem with HTTPS.
John D.
********** Original Email *********
** To: pound(at)apsis.ch
** From: Robert Segall <roseg(at)apsis.ch>
** Date: Wed, 25 Aug 2004 18:04:03 +0200
**********
On Wednesday 25 August 2004 16.44, John D wrote:[...]
OK, one more question: does this occur only with HTTPS or do you see it also
with HTTP?[...]
|
|
|
Re: Client timeout vs. backend timeout
Robert Segall <roseg(at)apsis.ch> |
2004-08-26 13:54:36 |
[ FULL ]
|
On Wednesday 25 August 2004 19.45, John D wrote:[...]
Sorry John, but I still can't replicate it. Finding a problem that stubbornly
refuses to manifest itself is difficult, so I'll have to leave it to you -
suggestions would be helpful. BTW, do you use the latest OpenSSL?[...]
|
|
|
RE: Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-27 19:32:43 |
[ FULL ]
|
Robert,
Just to check I updated to the latest OpenSSL 0.9.7d I still see the problem. I
am not sure I can suggest anything else. The only idea I have is to give you
the URL on our site so you can see it your self. If you would like to do this
please contact me directly (not through the list) I will will be happy to get
that to you.
John D.
********** Original Email *********
** To: pound(at)apsis.ch
** From: Robert Segall <roseg(at)apsis.ch>
** Date: Thu, 26 Aug 2004 13:54:36 +0200
**********
Sorry John, but I still can't replicate it. Finding a problem that stubbornly
refuses to manifest itself is difficult, so I'll have to leave it to you -
suggestions would be helpful. BTW, do you use the latest OpenSSL?
On Wednesday 25 August 2004 19.45, John D wrote:[...]
[...]
|
|
|
RE: Client timeout vs. backend timeout
"John D" <jwdavid(at)ibizvision.com> |
2004-08-30 16:37:33 |
[ FULL ]
|
Robert,
Just wanted to let you know that the new Pound-current (2004-08-30) seems to
resolve this issue. At least I can no longer reproduce it.
Thanks for your help;
John D.
********** Original Email *********
** To: pound(at)apsis.ch
** From: Robert Segall <roseg(at)apsis.ch>
** Date: Thu, 26 Aug 2004 13:54:36 +0200
**********
On Wednesday 25 August 2004 19.45, John D wrote:
Sorry John, but I still can't replicate it. Finding a problem that stubbornly
refuses to manifest itself is difficult, so I'll have to leave it to you -
suggestions would be helpful. BTW, do you use the latest OpenSSL?
[...]
[...]
|
|
|
|