发送消息挂机成功 - Delayed_job
Send message en hook success - Delayed_job
作业成功完成后如何发送消息?当工作正确完成时,我想发送消息并在 javascript 中的 swal
中显示它,但我不知道该怎么做,有什么建议吗?
除了发送消息,我不需要做任何事情
class CompileProjectJob < Struct.new(:url)
def perform
end
def success(job)
#send message when the work is successful
end
end
在 perform
方法队列末尾发送消息的新延迟作业
class CompileProjectJob < Struct.new(:url)
def perform
# the code here of this job
# queue new job
end
end
perform 方法的代码与任何常规代码一样按顺序执行
更新
将消息发送到前端有两种方式(推和拉)more info
- 推送:使用网络套接字将消息从后端推送到前端
- pull: 前端每隔一段时间发送请求,检查后端是否有新数据
并且您可以使用这些技术中的任何一种来解决问题
如果您使用拉取,您将使作业更新数据存储,例如 Redis 或 mysql。在某些情况下,前端会每隔一段时间发送一个请求来检查新数据,这将是一个更好的解决方案,但我认为您正在寻找其他技术
推动:
在这里你可以使用有源电缆 https://guides.rubyonrails.org/action_cable_overview.html
或者像 pusher 这样的第三方 https://www.pusher.com/tutorials/realtime-table-ruby-rails
这里的主要思想是您的前端应用程序将打开与您的服务器的 websocket 连接。此套接字将保持打开状态并通过通道侦听来自后端的任何更新,因此当您在通过此通道完成作业后发送更新时,它将被前端接收,因此您可以添加代码以显示消息
作业成功完成后如何发送消息?当工作正确完成时,我想发送消息并在 javascript 中的 swal
中显示它,但我不知道该怎么做,有什么建议吗?
除了发送消息,我不需要做任何事情
class CompileProjectJob < Struct.new(:url)
def perform
end
def success(job)
#send message when the work is successful
end
end
在 perform
方法队列末尾发送消息的新延迟作业
class CompileProjectJob < Struct.new(:url)
def perform
# the code here of this job
# queue new job
end
end
perform 方法的代码与任何常规代码一样按顺序执行
更新
将消息发送到前端有两种方式(推和拉)more info - 推送:使用网络套接字将消息从后端推送到前端 - pull: 前端每隔一段时间发送请求,检查后端是否有新数据
并且您可以使用这些技术中的任何一种来解决问题
如果您使用拉取,您将使作业更新数据存储,例如 Redis 或 mysql。在某些情况下,前端会每隔一段时间发送一个请求来检查新数据,这将是一个更好的解决方案,但我认为您正在寻找其他技术
推动: 在这里你可以使用有源电缆 https://guides.rubyonrails.org/action_cable_overview.html 或者像 pusher 这样的第三方 https://www.pusher.com/tutorials/realtime-table-ruby-rails 这里的主要思想是您的前端应用程序将打开与您的服务器的 websocket 连接。此套接字将保持打开状态并通过通道侦听来自后端的任何更新,因此当您在通过此通道完成作业后发送更新时,它将被前端接收,因此您可以添加代码以显示消息