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

Reply via email to