我有一個ActiveRecord事務發生在Web服務調用期間。它不需要與調用同步,並且發生此事務時發生延遲,並且用戶看到服務器的響應,因爲ActiveRecord正在忙於創建對象並更新數據庫(同時保留某個鎖定MyISAM表)+運行所有回調等。Ruby on Rails 3:將會話數據的ActiveRecord調用移動到後過濾器或後臺作業?
什麼是一個好的策略來移動此ActiveRecord創建調用,以便它不同步阻止Web服務?我需要從操作中創建的用戶會話傳遞創建調用參數,所以我不確定after_filter是否有意義。我應該使用延遲工作,消息隊列還是after_filter最好的選擇?如果答案是after_filter,我可以傳遞參數嗎?
看看這個鏈接,讓你開始http://stackoverflow.com/questions/124360/what-is-the-best-way-to-run-asynchronous-jobs-in-a-rails-application – Vadim 2011-03-29 19:44:09