Search squid archive

Re: index key generation mechanism?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 22/08/11 18:28, Raymond Wang wrote:
hi all:



For the file of "somejs.js", there are two urls referring to it,  for
example: url1 is "http://www.a.com/somejs.js"; and url2 is
"http://www.a.com/somejs.js";.

by default, squid would use the above urls to generate certain key
that would be used as index key to write/read the somejs.js file
to/from memory.

My question is that: could I affect the index key generation, so that
squid could save the somejs.js file in memory only one object.  for
example, for url1, we can trim "http://www.a.com/somejs.js"; to
"somejs.js" and "http://www.a.com/somejs.js";  to "somejs.js", then the
key would be "somejs.js", e.g. use the file name (or some variants
based on it) as index key. this way, we can "save" the two different
urls (the referred files have the same content)  as only one object in
Squid.

is it possible?


Possible. Yes. Easy no.

The key Squid uses is the public URL which the client is asking for.

YouTube is a well-known website which behaves like you describe. It is a serious nightmare for a great many network admins.
http://wiki.squid-cache.org/ConfigExamples/DynamicContent/YouTube

The storeurl_rewrite feature experiment in squid-2.7 does exactly what you describe.


Considering that 1) you must already have a list of patterns for matching, and 2) you thus have a known location of at least one instance.

The safer, friendlier, and HTTP compliant method is to simply setup a url_rewrite_program helper. Which tests URLs against your patterns and emits "303:$new_url" when it finds a match on GET requests.

** by safer and friendlier, I mean that instead of potentially poisoning caches all over the world with broken or corrupt data (see recent T-mobile problems) all you do is break any load balancing on the websites in question.

Amos
--
Please be using
  Current Stable Squid 2.7.STABLE9 or 3.1.14
  Beta testers wanted for 3.2.0.10


[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux