4
我有一個簡單的resque作業,接受模型id,獲取它,然後調用獲取的項目上的方法。Resque緩存活動記錄調用
class CupcakeWorker
@queue = :cupcake_queue
def self.perform(cupcake_id)
@cupcake = Cupcake.find(cupcake_id)
@cupcake.bake
end
end
我排隊它從使用「排隊」的方法
def bake
Resque.enqueue(CupcakeWorker, params[:cupcake_id])
render :json => 'Baking...'
end
作業隊列和正確執行的控制器的動作。但是,如果我在數據庫中修改記錄的數據並繼續對作業進行排隊,則操作不會使用新值執行。
我只能讓它獲取新的值,如果我重新啓動resque工作進程。恢復緩存對象?是否有辦法確保每次調用工作人員時都從數據庫中重新獲取?