在開發模式下使用Rails 3.2,我試圖測試一下簡單的頁面緩存。Rails 3.2緩存未命中並且頁面緩存正在開發中 - 其他人?
pages_controller.rb
class PagesController < ActionController::Base
caches_page :index, :show
def index
@pages = Page.all
end
def show
@page = Page.find(params[:id])
end
end
development.rb
config.action_controller.perform_caching = true
application.rb中
config.action_controller.page_cache_directory = File.join(Rails.root, 'public')
W¯¯當我測試這個設置時,它似乎像正常一樣處理這些操作,並且頁面緩存按預期寫入。然而,隨後的請求報告已經我困惑的是以下兩點:
- 這似乎錯過了緩存,但...
- 的要求似乎事後不加載控制器,運行任何查詢,等,讓我相信它是從緩存中加載的。
下面是對第一個請求日誌輸出,再用5個重載算賬:
Started GET "/pages" for 127.0.0.1 at 2012-02-12 21:01:24 -1000
Processing by PagesController#index as HTML
Page Load (0.2ms) SELECT `pages`.* FROM `pages`
Rendered pages/index.html.erb (0.8ms)
Write page /Users/ckihe/Sites/experiment/public/pages.html (0.3ms)
Completed 200 OK in 3ms (Views: 1.9ms | ActiveRecord: 0.2ms)
cache: [GET /pages] miss
cache: [GET /pages] miss
cache: [GET /pages] miss
cache: [GET /pages] miss
cache: [GET /pages] miss
任何人有任何想法,爲什麼緩存中說,它缺少?
對不起,遲到的迴應。這絕對會讓我走上正確的軌道......看到頁面緩存「工作」,但看到日誌中的「緩存未命中」,我感到非常困惑。 – simplesessions 2012-02-21 01:27:56