我們在應用程序中已經緩存了一些塊。Rails 4/Heroku智能到期緩存
根據某些登錄,我們有時會修改其中的一些,在這種情況下,我們有一個邏輯會過期相關的塊。
當我們在代碼中執行更改時,我們需要通過控制檯過期這些塊。在這種情況下,我們需要檢測並精確確定邏輯,以便過期所有修改的塊。舉例來說,如果我們改變封閉的流標頭的HTML,它看起來像:
a = ActionController::Base.new
Stream.closed.each {|s| a.expire_fragment("stream_header_#{s.id}") }; nil
其實,我認爲必須是一個更通用的方法簡單地比較,應該如何呈現緩存塊, 只會過期其html與其緩存版本不同的塊。
我不知道是否有一個gem來完成這個任務,如果沒有 - 如果有人已經寫了一些部署鉤子來做到這一點。
============== UPDATE ============
一些想法:
在rake任務能及得到緩存片段,只要你知道你有哪些片段。
例如,在我來說,我可以這樣做:
a = ActionController::Base.new
Stream.each do |s|
cached_html = a.read_fragment("stream_header_#{s.id}")
:
:
如果我能產生非緩存HTML我可以簡單地比較他們,並在到期時的緩存片段它們是不同的。
可能嗎? 你覺得這個任務有多重?