簡體   English   中英

Rails:異步寫入記錄

[英]Rails: writing a record asynchronously

在我的Rails 5 RC1應用程序中,通過ActiveRecord模型將一些日志條目寫入數據庫表。 寫入此日志條目需要花費幾毫秒的時間,並且會延遲最終用戶的響應。 我正在尋找一種機制,可以執行將日志寫入“后台”的操作,這樣它就不會阻止/延遲響應(有點像“一勞永逸”)。 您對此有什么建議嗎?

我試圖將各個部分包裝到

Thread.new { code }

但這甚至似乎進一步延遲了幾個MS的響應。

我感謝任何提示!

謝謝並恭祝安康

嘗試研究像RabbitMQ這樣的消息傳遞服務以進行異步事務和活動。 我完全按照您的描述使用RabbitMQ。

如果使用的是ActiveJob,則可以使用:async ,它看起來是queue_adapter的默認queue_adapter。 但是,這不會在重新啟動之間保留作業,因此實際上不建議在生產中使用。

請參閱Rails 5將Active Job默認適配器從Inline更改為Async

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM