Hi all, I'm looking to place a (hopefully simple) squid accelerator array in front of one of my http/xml app-servers.
currently we are running one squid, and are quite happy. but would like to have two in case the hardware on one fails. the plan is to have a BIG/IP round robin requests to each if they are alive. the problem is this. we would like to prevent as few requests from reaching the origin server as possible (the xml/app-server). we need to invalidate the cache on all members of the array (currently two proposed machines) when something becomes pre-maturely stale. when invalidating the object, would prefer to hit the 'system' and not each individual squid instance (just make one request to clear the object) so, if I understand things correctly. in an array of two squids as siblings: 1) if squid A gets a normal GET request, it does one of three things: - serve a cache hit, or - ask it's neighbor squid B and serves from it's cache (and store local), or - serve from the origin server (and store local) 2) but, if I do a PURGE and if squid A gets the request: - it clears the cache (does not notify squid B) 3) or, if I do a GET with No-Cache header against squid A: - it serves from the origin server (and stores locally, does not notify squid B) assuming those assumptions are correct, it looks like I'm sol. or is there still some config twiddling I can perform to effectively get me what I'm looking for. for example, squid A does not cache neighbor cache hits, so when it receives a GET with a no-cache, it hits the neighbor (instead of the origin) since it's a local miss, forcing the neighbor squid B to re-fetch the object, store it, and return it to squid A. (long shot) sorry for the long email. but I would appreciate any pointer or references if there are any. cheers, chris
