<div dir="ltr">Hi Eliezer,<div><br></div><div>Yes, Jaap is my first name :)</div><div>I might have not mentioned this before, but I'm using Squid as a reverse proxy / in acceleration mode. So as far as I know your comments are not applicable. Thanks for your thoughts though!</div><div><br></div><div>Jaap</div><div class="gmail_extra"><br><div class="gmail_quote">2016-06-19 7:16 GMT+02:00 Eliezer Croitoru <span dir="ltr"><<a href="mailto:eliezer@ngtech.co.il" target="_blank">eliezer@ngtech.co.il</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hey Jaap, (not sure if it's the first name)<br>
<br>
The issue is that there are consequences for cached objects not being revalidated.<br>
Also if there are sites which needs to be targeted it would be a different story.<br>
Some might not understand the difference between a cache and an archive or want it to act as one.<br>
A cache is meant to be temporary while archive should last longer.<br>
One example is Windows Updates which might needs to be archived since it's always needed.<br>
<br>
If you have a specific targeted site, let me know and I will try to see if something can be done.<br>
<br>
Eliezer<br>
<br>
----<br>
Eliezer Croitoru<br>
Linux System Administrator<br>
Mobile: <a href="tel:%2B972-5-28704261" value="+972528704261">+972-5-28704261</a><br>
Email: <a href="mailto:eliezer@ngtech.co.il">eliezer@ngtech.co.il</a><br>
<span class="im HOEnZb"><br>
<br>
-----Original Message-----<br>
From: squid-users [mailto:<a href="mailto:squid-users-bounces@lists.squid-cache.org">squid-users-bounces@lists.squid-cache.org</a>] On Behalf Of Alex Rousskov<br>
Sent: Friday, June 17, 2016 6:22 PM<br>
To: Jaap Dam<br>
Cc: <a href="mailto:squid-users@lists.squid-cache.org">squid-users@lists.squid-cache.org</a><br>
Subject: Re: [squid-users] Queue incoming requests when fetching from origin<br>
<br>
</span><div class="HOEnZb"><div class="h5">On 06/17/2016 05:33 AM, Jaap Dam wrote:<br>
<br>
> From what I<br>
> understand, re-validation is useful when done with If-Modified-Since<br>
> or If-None-Match.<br>
<br>
To revalidate stale objects, Squid uses conditional requests. That is not the only way to revalidate, but that is what Squid does.<br>
<br>
<br>
> However my responses do not provide the E-Tag header nor the<br>
> Last-Modified header.<br>
<br>
IIRC, the If-Modified-Since field in a conditional request may use the response Date header when Last-Modified is not available. If the origin server supports checking resource modification times (without disclosing them in responses for some reason), revalidation would still work as intended.<br>
<br>
<br>
> Is it possible for Squid to never revalidate but always to assume<br>
> 'pure cache-miss' when a resource is stale?<br>
<br>
I am not sure. Others may be able to answer this question authoritatively. If you force me to guess, I would say "no".<br>
<br>
Alex.<br>
<br>
<br>
<br>
> 2016-06-16 17:20 GMT+02:00 Alex Rousskov<br>
> <<a href="mailto:rousskov@measurement-factory.com">rousskov@measurement-factory.com</a><br>
> <mailto:<a href="mailto:rousskov@measurement-factory.com">rousskov@measurement-factory.com</a>>>:<br>
><br>
>     On 06/16/2016 01:45 AM, Jaap Dam wrote:<br>
><br>
>     > Thanks for the information. Could you elaborate on when collapsed<br>
>     > forwarding does apply?<br>
><br>
>     Squid is currently able to collapse HTTP client [miss] requests (but not<br>
>     internally generated HTTP requests triggered by HTTP client requests).<br>
>     Furthermore, to be collapsable, the request must have no markings that<br>
>     make the future response uncachable.<br>
><br>
><br>
>     > With your extra information, my assumption would<br>
>     > be that it only applies on requests of a resource that has never been<br>
>     > cached before.<br>
><br>
>     I would not phrase it like that because Squid does not remember was has<br>
>     been cached before, only what is still cached at the query time. There<br>
>     are three primary cases for an HTTP client request to consider here:<br>
><br>
>     * pure cache hit: Collapsing is inapplicable because Squid does not send<br>
>     any requests (there is nothing to collapse). Each HTTP client request is<br>
>     satisfied from the Squid cache.<br>
><br>
>     * pure cache miss: Multiple requests for the same missing object can be<br>
>     collapsed if collapsed_forwarding is enabled. Collapsable requests have<br>
>     no markings that make the future response uncachable.<br>
><br>
>     * revalidation: The requested object was found in the cache but it was<br>
>     stale. Squid sends an internal "revalidation" request to the origin<br>
>     server or peer. These internal requests are currently not collapsed. We<br>
>     are working on collapsing them as well.<br>
><br>
><br>
>     > Secondly would you have a suggestion for solving the issue I'm facing?<br>
><br>
><br>
>     I have not studied the issue you are facing, but if you think collapsing<br>
>     revalidation requests would solve your problem, then either wait for us<br>
>     to finish initial collapsed revalidation support (and then see if it<br>
>     solves your problem) or co-sponsor that ongoing development (to make<br>
>     sure it solves your problem).<br>
><br>
><br>
>     HTH,<br>
><br>
>     Alex.<br>
><br>
><br>
><br>
>     > 2016-06-15 17:19 GMT+02:00 Alex Rousskov:<br>
>     ><br>
>     >     On 06/14/2016 02:51 AM, Jaap Dam wrote:<br>
>     ><br>
>     >     > I've part of the logging as an attachment. I'm requesting a<br>
>     single URL<br>
>     >     > in this log. The log starts with a stale cache of the item.<br>
>     ><br>
>     >     Collapsed forwarding does not apply to cache revalidation<br>
>     requests yet.<br>
>     >     Factory is working on implementing collapsed revalidations (in<br>
>     some<br>
>     >     environments), but I cannot promise a specific delivery date<br>
>     or that<br>
>     >     your particular environment will be covered.<br>
>     ><br>
>     >     Alex.<br>
>     ><br>
>     ><br>
>     ><br>
>     ><br>
>     >     > 2016-06-13 15:34 GMT+02:00 Amos Jeffries:<br>
>     >     ><br>
>     >     >     On 14/06/2016 12:29 a.m., Jaap Dam wrote:<br>
>     >     >     > Is the collapsed_forwarding directive the correct one<br>
>     to use<br>
>     >     for my<br>
>     >     >     > use-case or am i missing something?<br>
>     >     ><br>
>     >     >     Yes it is correct so far as I am understanding your need.<br>
>     >     ><br>
>     >     >     For further debugging about what is going on you will<br>
>     need the<br>
>     >     HTTP<br>
>     >     >     messages involved. Add the directive "debug_options 11,2<br>
>     20,3"<br>
>     >     to your<br>
>     >     >     config to get them logged in cache.log.<br>
>     ><br>
>     ><br>
><br>
><br>
<br>
</div></div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
squid-users mailing list<br>
<a href="mailto:squid-users@lists.squid-cache.org">squid-users@lists.squid-cache.org</a><br>
<a href="http://lists.squid-cache.org/listinfo/squid-users" rel="noreferrer" target="_blank">http://lists.squid-cache.org/listinfo/squid-users</a><br>
<br>
</div></div></blockquote></div><br></div></div>