Uma requisição passa por múltiplas camadas de cache, cada uma mais próxima do usuário servindo mais rapidamente, mas retendo menos dados. A ideia é responder o mais distante possível (próximo ao cliente) e só cair para a origem quando nada acima puder servir a resposta.
As camadas, de fora para dentro
Browser → CDN → Reverse proxy → App/object cache → OPcache → Database
(closest to user, fastest) (closest to data)
