obj.ttl derived?
David Birdsong
david.birdsong at gmail.com
Mon Sep 14 21:43:20 CEST 2009
On Mon, Sep 14, 2009 at 12:38 PM, David Birdsong
<david.birdsong at gmail.com> wrote:
> awesome, thanks. this explains poor cache-hit ratio.
>
> On Mon, Sep 14, 2009 at 12:22 PM, Kristian Lyngstol
> <kristian at redpill-linpro.com> wrote:
>> On Mon, Sep 14, 2009 at 11:57:25AM -0700, David Birdsong wrote:
>>> How is obj.ttl derived when both Expires and max-age is set by the backends?
>>>
>>> We had a case where the backend was setting Expires to 60seconds after
>>> the request and max-age was 5184000. Additionally in vcl_fetch:
>>>
>>> sub vcl_fetch {
>>> if (obj.ttl < 9000s) {
>>> set obj.ttl = 9000s;
>>> }
>>> }
>>>
>>> What would obj.ttl be set to given the Expires and max-age contradiction?
>>
>> If s-maxage is set, use that as default, otherwise use max-age as default.
>>
>> If Expires is sooner than the default, use that.
>>
>> So in your example, the ttl should be 60s.
oh, to clarify...
would the stanza in vcl_fetch override the obj.ttl which was set by
the Expire header?
sub vcl_fetch {
if (obj.ttl < 9000s) {
set obj.ttl = 9000s;
}
}
or do I have the order wrong?
>>
>> --
>> Kristian Lyngstøl
>> Redpill Linpro AS
>> Tlf: +47 21544179
>> Mob: +47 99014497
>>
>
More information about the varnish-misc
mailing list