ruby-on-rails - perform_later 和 perform_async 有什么区别?
问题描述
根据 ActiveJob 文档来排队我应该使用的工作perform_later
。Sidekiq 文档实现perform_async
,但文档的 ActiveJob 部分建议使用perform_later
. 我perform_async
以前在 Rails 中使用过,所以这些有什么不同还是只是约定?
解决方案
ActiveJob 是最知名的后台作业 gem 的包装器,用于提供用于处理后台作业的基本 API。
ActiveJob 定义perform_later
. Sidekiq 定义perfom_async
. 你使用哪种方法取决于你如何实现你的工人。如果您使用 ActiveJob 工作人员perform_later
,那么您必须使用perform_async
.
推荐阅读
- cloud-init - cloud-init:可以合并 write_files 吗?
- html - 如何在cols bootstrap中为滑块设置相等的高度
- javascript - 部署后更改的反应状态数组
- r - 如何修复 Sweave 中代码的位置?
- jsf - 将 ui:includes 重构为 ui:components
- xamarin.forms - 列表视图xamarin表单内网格内的图像问题
- excel - excel(vba)中的日志功能 - 没有给我正确的答案
- node.js - 为什么在某些情况下 res 未定义?
- audio - 录制 nativescript 时忽略手机的输出
- javascript - Google 表格/Javascript 粘贴问题