On 7/2/07, martin sarsale <runa@xxxxxxxxxxxx> wrote:
Dear all: We're developing the new version of our CMS and we would like to use squid in accelerator mode to speed up our service. From the application side, we know exactly when the data changed and we would like to invalidate all cached data for that site. Is this possible? maybe using squidclient or something. We can't do this purging url by url since it doesn't makes much sense (and we don't have the url list!). We want to wipe out every cached object for mysite.com.
You can't do that on the squid side either, since squid doesn't index objects by URL but by hash. The only way is to PURGE the relevant object. You can reduce quite a lot the window of staleness by specifying in every response the HTTP header: Cache-Control: s-maxage=XXX, public, proxy-revalidate (reference taken from: http://www.mnot.net/cache_docs/) by choosing the right XXX value (the time in seconds before the object expires) you'll be able to find the right balance between higher load on the backend (smaller values of XXX) and higher chance of serving stale content (higher values of XXX) -- /kinkie