W dniu 13.05.2013 22:59, Leif Hedstrom pisze:
On 5/13/13 9:53 AM, James Peach wrote:
On May 13, 2013, at 7:12 AM, Tomasz Kuzemko <[email protected]> wrote:
Hello,
I'm running ATS in front of a fairly large *shared* webserver (many
vhosts). I've noticed that with keep-alive Traffic Server keeps a two
level hash of established sessions: ip -> hostname -> session.
Because of this ATS opens way too many connections than are needed.
In HttpSessionManager.cc I found this comment which explains the
reasoning behind this:
// We compute the mmh for matching the hostname as the last
// check for a match between the session the HttpSM is looking
// for and the sessions we have. We have to use the hostname
// as part of the match because some stupid servers can't
// handle getting request for different virtual hosts over
// the same keep-alive session (INKqa05429).
Do you know which servers were affected by such bug?
It's probably reasonable to assume that this is so old, it's no longer
applicable. That bug is probably 10+ years old.
I made a small patch to disable the 2nd level hash and noticed a huge
performance benefit under heavy load. Would it be possible to have
this as an option in records.config?
I don't see any issues with having this as an option. If you file a
bug at https://issues.apache.org/jira/browse/TS and attach your patch,
I'll review and merge it
Yeah, lets get a jira on it. Depending on what the patch does, we can
either make a new option, or, perhaps (but hard to say depending on what
the patch actually implies) bake it into the existing configuration
which deals with the behavior of the session cache. Or ideally, just
make it the new default behavior (but we'd have to see what implications
it'd have against at least some common web servers).
-- Leif
For the moment the patch just comments 4 lines, so it's more a proof of
concept :-)
I created a jira ticket on this issue:
https://issues.apache.org/jira/browse/TS-1893
--
Best regards,
Tomasz Kuzemko
[email protected]