benoit_9199
Mar 05, 2009Nimbostratus
persist source_addr in iRule ... doesn't persist
Hi,
I have the following iRule:
when HTTP_REQUEST {
if { [HTTP::uri] ends_with "/" or [HTTP::uri] contains "cgi-bin/" or [HTTP::uri] contains ".dyn" } {
dynamic content, use default pool
if { [matchclass [HTTP::host] contains $::high_traffic_site] } {
case 1a: special high traffic vhost, maximise pool usage:
persist source_addr 255.255.255.255 3600
} else {
case 1b: normal low traffic vhost, limit pool usage (one vhost to
one node) to maximise backend cache
persist hash [crc32 [domain [HTTP::host] 2]] 3600
}
} else {
case 2: static content, goes directly to pool_static with no persistence
pool pool_static
}
}
cases 1b and 2 work perfectly, however case 1a is weird, when tracking the backend node used
i see two node used per source ip. Eg: request 1 goes to 10.0.0.21, request 2 to 10.0.0.26, request 3 back to 10.0.0.21, etc...