req.hash_ignore_busy

BOOL, can be read and set, but not unset.

Available inrecv

When there is more than one simultaneous cache miss for an object, Fastly will normally put all but one of those requests in a queue. Thus, only one cache miss causes an origin fetch and the rest wait for that response, a process known as request collapsing.

req.hash_ignore_busy overrides this behavior and forces all requests to behave independently. Enabling this may cause a large increase in origin traffic when objects are not in cache.

When enabled, this mode also makes stale objects unusable, thereby disabling the effects of the stale-while-revalidate and stale-if-error Cache-Control directives.

Try it out

req.hash_ignore_busy is used in the following code examples. Examples apply VCL to real-world use cases and can be deployed as they are, or adapted for your own service. See the full list of code examples for more inspiration.

Click RUN on a sample below to provision a Fastly service, execute the code on Fastly, and see how the function behaves.

Cache '429' rate-limiter responses per IP

If a backend returns a 429, cache it for the requesting IP but continue to allow other clients to use origin.

User contributed notes

BETA

Do you see an error in this page? Do you have an interesting use case, example or edge case people should know about? Share your knowledge and help people who are reading this page! (Comments are moderated; for support, please contact Fastly support)