gpt4 book ai didi

ruby-on-rails - 后台任务完成后如何通知用户?

转载 作者:行者123 更新时间:2023-12-01 22:20:26 33 4
gpt4 key购买 nike

我将 Rails 与 ActiveJobsidekiq 一起用作后端。当用户进入页面 sidekiq 创建长期后台任务时,我如何在任务完成时通知用户(通过在网页上呈现部分)?

Rails 和 sidekiq 作为不同的进程工作。这个事实让我很困惑,我不明白如何使用后台作业处理完成状态。

最佳答案

ActiveJob 提供一个 after_perform根据文档,回调是这样工作的:

class VideoProcessJob < ActiveJob::Base
queue_as :default

after_perform do |job|
UserMailer.notify_video_processed(job.arguments.first)
end

def perform(video_id)
Video.find(video_id).process
end
end

因此,您不必担心直接与 Sidekiq 或任何其他排队后端集成,与 ActiveJob 交谈 :)

关于ruby-on-rails - 后台任务完成后如何通知用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40487465/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com