L7 URL matching and persistence-rebalance

Unanswered Question

I've been working with TAC on this problem for over 2 days and I think I just figured out the problem myself. I attempted to add a simple L7 inline URL match to send "/images/.*" to a different serverfarm, but the behavior of doing this with mostly default settings on the box was unpredictable. I just realized that the connections are probably persisting on a rserver. To confirm this, I created an http parameter-map and enabled persistence-rebalance and now the behavior is as expected. Documentation mentions nothing about needing to do this with URL matching and both the TAC and whomever this case was escalated in San Jose didn't know this.


I just need a few people who have done L7 URL matching to confirm that persistence-rebalance is required.


The docs do mention the performance penalty to load-balancing on each client request over the same connection. Does anyone know how bad that is or if there's a better way to get this to work.


The thinking in TAC right now was a potential bug, but this doesn't seem to be the case now.


Thanks.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
Gilles Dufour Thu, 04/19/2007 - 09:46

most browsers nowadays use HTTP/1.1 and persistent connection.

Which means that 1 tcp connection is being used to send and receive multiple http requests/responses.


If you do not have persistent rebalance, the ACE module [and any other loadbalancers] will use the first request to make its loadbalancing decision and then it will leave it like this.

So, if the user clicks a link that should be sent to a different server, the ACE module will not see it.


With persistent rebalance the ACE module inspects every requests and if necessary it will remap the connection to a different server.


The only drawback is that it takes resources and times to inspect all connections. So you'll get performance not as good as if you did not have persistent rebalance.


Gilles.

Actions

This Discussion