[medusa] Re: medusa and apache proxy -more info
Tue, 17 Apr 2001 11:27:51 +1000 (EST)
> With more testing we've found out that medusa works differenetly on
> Solaris (sunOS5) and Linux (I'm using Mandrake 7.1) at least when
> using the Linux telnet client:
> On solaris using telnet the server closes the connection immediately
> after the </HTML> when using HTTP/1.0. When using HTTP/1.1 it will
> keep connected. Both as expected.
> On linux the Medusa server will wait 30 seconds before closing the
> session when using HTTP/1.0 and keeps the connection open much longer
> using HTTP/1.1.
The 30 sec delay sounds like the default medusa polling time on select. I don't
know _why_ it would require another iteration through the loop for your
application, but is it possible you have readable/writeable status changing
around about the time you service the final push() for the connection. When the
delay happens, it might not be quite ready the select, so it is excluded until
the next iteration, when it gets selected immediately. Remember the
readable/writeable test is performed once per iteration through the loop, so if
something is not ready at the start of the loop, it will be excluded from the
select until the next iteration.
I suspect that if you change your polling time from the default, you
can "adjust" the delay. Also, establishing another connection while one
is "delayed" will kick the select loop, causing the delay to end immediately.
Adjusting the poll time might be a quick fix, but I suspect you need to look at
your readable/writeable tests.
ABO: finger abo@m... for more information.