Rails page_cache_directory
O Rails oferece algumas formas de cache, sem dúvida a mais eficiente é o Cache de Página (page cache). Com o cache de página é gerado uma página html estática, assim não são necessárias consultas no banco e nem renderizações de views, tornando o carregamento extremamente rápido.
Você pode encontrar uma série de tutoriais sobre como implementar page cache no rails, recomendo esse:
http://railsenvy.com/2007/2/28/rails-caching-tutorial
Existe a possibilidade de mudar o diretório aonde o Rails armazenará as páginas estáticas (em cache), você pode alterar o arquivo /config/environments/development.rb e acrescentar
config.action_controller.page_cache_directory = RAILS_ROOT + "/public/cache/"
lembrando que perform_caching deve ser true
config.action_controller.perform_caching = true
Teoricamente o Rails deve armazenar agora as páginas estáticas dentro de public/cache. Para que o servidor de aplicação (no caso o Passenger) possa “encontrar” a página armazenada, é necessário reescrever a url para a pasta cache.
Vamos supor que estamos fazendo cache da home. No arquivo public/.htaccess acrescente
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} "/"
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{DOCUMENT_ROOT}/cache/index.html -s
RewriteRule ^$ /cache/index.html [L]
Pronto! Agora o apache consegue “encontrar” a página cacheada, caso ela exista.
Posts relacionados:
- Db Migrate Production no Ruby on Rails
- Requisição HTTP no Ruby on Rails
- CakePHP ou Rails
- Cabeçalho expires php
- Programador Ruby on Rails
Tags: caches_page, page cache, page_cache_directory, Ruby on Rails
Postado em terça-feira, novembro 17th, 2009 at 13:36 na categoria Ruby on Rails. Siga o RSS 2.0 feed. You can leave a response, or trackback from your own site.