Skip to content

Instantly share code, notes, and snippets.

@rogeriochaves
Created August 7, 2013 16:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save rogeriochaves/6175461 to your computer and use it in GitHub Desktop.
Save rogeriochaves/6175461 to your computer and use it in GitHub Desktop.
Qual Cache do Rails utilizar para melhorar (muito) a performance server-side
Page Cache:
- Quando todos os usuários verão exatamente a mesma página, ao mesmo tempo, e quando é uma página que não muda muito
Action Cache:
- Quando houver código para ser executado antes da action (ex.: Autenticação)
- Porém os resultados das páginas serão os mesmos
Fragment Cache:
- Quando a página for diferente para cada usuário
- Porém partes da página forem a mesma para diversos usuários
- Ou partes da página forem específica para cada usuário porém estará em várias páginas (como quando fica lá no topo "Seja bem vindo, Rogério")
Memcached:
- Quando já estiver utilizando Action ou Fragment caching
- Quando o conteúdo é diferente para cada usuário mas muda pouco, quando não há necessidade de acessar o DB para puxar a mesma coisa toda hora (você pode salvar o resultado de uma query no memcache por 5 minutos por exemplo)
Client-side Caching (:etags)
- Quando já estiver usando Fragment ou Object Caching e quiser diminuir ainda mais o número de renderizações/queries
Reverse-Proxy Caching
- Quando você já tiver implementado todos os outros tipos de cache e estiver esperando milhões de usuários
Essa lista foi feita em 2011, precisa de muitas atualizações ainda.
Saiba mais:
http://www.youtube.com/playlist?list=PLuVcDOUVjW2ePvFapFSHBZ71ya2fLHZS5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment