We have configured our system with NginX listening on port 80, serving static content and proxying dynamic requests to a backend server.
I can configure NginX to cache content generated by the Backend, but I want this cached content be served only when the Backend responds with an error HTTP 5xx, or when it's totally down or unreachable.
We tried the proxy_cache_use_stale option with max-age of 1 second, it worked but it has one negative side.. which is simply dozens of requests being served from cache during this 1 second cache-aged-content. These requests served from cache will miss further Backend processing (Stats for example).
We can only afford to live with this negativity IF the backend was down, Thus, the cache will act as a backup or a failover solution. But as long as the backend is up and responding, no requests should be served from cache.
We need some good hands that can make this done for us, and discuss the solutions.
Please, if you are not with enough good and solid experience in this field.. don't bid and waste both of our times.