• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Cache mit siblings funktioniert nicht richtig

Ich habe ein problem wenn ich siblings als proxies einsetze.

Wenn Cache-Server 1 ein Image request bekommt und es ist nicht in seinem eigenen Cache, wird er versuchen das Object von seinen sibling Cache-Server2 zu bekommen.
Cache/Server2 hat das Object zufaelligerweise und antwortet folgendes, weil er das gesuchte Oject in seinem Cache haelt:
xx.xx.xx.xx [15/May/2011:12:42:31 +0200] 0 "ICP_QUERY http://mydestination.intheinternet.com/img/app?path=album%2F600x600%2F674%2F288804569_391756561_20110215230116.jpg&mimetype=jpg&width=150&height=150 HTTP/0.0" "-" 0 164 "-" "-" "-" UDP_HIT:NONE "-" "-" "-" "-" "-"

Nun weiss Cache-Server 1 ja das Cache-Server 2 das Object hat und er kann diesen dann nochmals fragen dieses zu liefern:
xx.xx.xx.xx [15/May/2011:12:42:34 +0200] 2855 "GET http://mydestination.intheinternet.com/img/app? HTTP/1.1" "/img/app?
path=album%2F600x600%2F674%2F288804569_391756561_20110215230116.jpg&mimetype=jpg&width=150&height=150" 200 12579 "http://mystore.com/browse/album/17007907/%CE%9A%CE%BB%CE%B5%CE%B9%CF%83%CF%84%CE%AC+%CE%A4%CE%B1+%CE%A3%CF%84%CF%8C%CE%BC%CE%B1%CF%84%CE%B1?tr=17007917&gr=" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.68 Safari/534.24" "-" TCP_MISS:DIRECT "*/*" "image/jpeg" "Mon, 16 May 2011 10:42:34 GMT" "max-age=86400" "-"


Aber was ich dann nicht verstehe ist, warum Cache-Server 2 nun versucht den request vom Internet zu laden ("TCP_MISS:DIRECT" -> Siehe log oben), obwohl er das Object ja hat
und ja vorher auch entsprechend mit "UDP_HIT:NONE" geantwortet hat??

Kann mir einer sagen, was ich hier noch falsch gemacht habe in der Konfiguration?

Cheers,
 

spoensche

Moderator
Teammitglied
Die erste Anfrage per ICP kommt von dem Cache1. Sollte Cache2 es nicht im Cache haben versucht er es nicht aus dem Internet zu laden. Das NONE wird auch im Fehlerfall verwendet.

Die zweite Anfrage kommt von einem Client und nicht von dem Cache1. Da er das Object wohl nicht im Cache hat, lädt er es nach. Also Cache1 hat das Object nicht von Cache2, sondern seine Anfrage an den Parent oder direkt ins Internet erhalten.
 
Oben