在我的Rails中5 RC1應用程序通過ActiveRecord模型將一些日誌條目寫入數據庫表。 編寫此日誌條目需要幾毫秒並延遲最終用戶的響應。 我正在尋找一種機制,可以將日誌寫入「背景」,因此它不會阻止/延遲響應(某種「即燃即用」)。你有什麼提示如何做到這一點?Rails:異步寫入記錄
我試着到各自的部分包裝成
Thread.new { code }
但這似乎甚至進一步延遲響應幾ms。
我很欣賞任何提示!
感謝和問候
在我的Rails中5 RC1應用程序通過ActiveRecord模型將一些日誌條目寫入數據庫表。 編寫此日誌條目需要幾毫秒並延遲最終用戶的響應。 我正在尋找一種機制,可以將日誌寫入「背景」,因此它不會阻止/延遲響應(某種「即燃即用」)。你有什麼提示如何做到這一點?Rails:異步寫入記錄
我試着到各自的部分包裝成
Thread.new { code }
但這似乎甚至進一步延遲響應幾ms。
我很欣賞任何提示!
感謝和問候
嘗試尋找RabbitMQ等異步事務和活動的消息傳遞服務。我完全按照你描述的方式使用RabbitMQ。
如果您使用ActiveJob,則可以使用:async
,這看起來是ActiveJob的默認queue_adapter
。但是,這不會在重新啓動之間持續作業,也不是真正推薦用於生產。
參見Rails 5 changed Active Job default adapter from Inline to Async。
感謝您的提示。我已經考慮過了。但我希望找到一個不需要額外安裝服務器的解決方案...... – Daniel