G'day,
I'm seeing something strange with the behaviour of Squid-2.7 and Vary objects.
The following happens w/ an accelerator setup:
* Request for X comes in w/ Accept-Encoding: gzip,deflate
* Request is forwarded, gzip encoded variant is stored in the cache
* Request for X comes in w/out Accept-Encoding: header
* Request is forwarded, non-gzip encoded variant is returned
* storeSetPublicKey() does a lookup on the object URL, finds there's
an existing key and invalidates it
* This invalidates the Vary index object and encoded variant object
* Non-compressed object is stored in the cache
* Subsequent requests w/ or w/out Accept-Encoding: set will always
return the non-compressed object
Now, I understand why Squid returns a non-compressed variant of the
object if its in the cache (and I may look further into that behaviour
later on) but the first few steps are what bother me.
My uttterly conjecture based guess: should the origin server be
returning non-compressed objects with the same Vary: headers?
How are others' dealing with this in accelerator based setups?
Adrian
Received on Sat Aug 30 2008 - 07:36:54 MDT
This archive was generated by hypermail 2.2.0 : Sun Aug 31 2008 - 12:00:04 MDT