gpt4 book ai didi

ruby-on-rails - 同一个应用程序中的 Heroku Delayed Job 和 Sidekiq

转载 作者:行者123 更新时间:2023-12-04 03:15:50 24 4
gpt4 key购买 nike

我目前正在我的 Heroku 实例上运行 delayed::job 来处理很多不同类型的作业(导出大型列表等),并且我正在使用很棒的 progress job gem向发出请求的用户显示作业的进度条。

我希望能够为其他作业运行一个 sidekiq worker,不涉及用户,我不需要进度条,因为它比 Delayed::Job 有明显的内存改进。

我可以在同一个 heroku 应用程序上同时运行 delayed job 和 sidekiq 吗?如果是这样,有什么我可以效仿的例子吗?我对如何设置 procfile 或这个感到困惑。

下面是我的 Procfile。我不知道如何同时启动 Delayed Job 和 Sidekiq?如果我只在下面的工作行上添加 bundle exec sidekiq 之类的操作,它似乎可以取代延迟的工作?

简介:

web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}
web: bundle exec puma -C config/puma.rb
worker: bundle exec rake jobs:work

最佳答案

这是可能的。

首先,你应该解决类似.delay的接口(interface)冲突问题。这里:Run Delayed Jobs and Sidekiq at the same time

其次,您应该设置多个 active_job 适配器配置。这里:http://edgeguides.rubyonrails.org/active_job_basics.html#backends

关于Procfile,可以注册多个worker例如)

web: bundle exec puma -t 5:5 -p ${PORT:-3000} -C config/puma.rb
worker: bundle exec sidekiq
delayedjobworker: bundle exec rake jobs:work

检查 https://devcenter.heroku.com/articles/procfile#more-process-type-examples

关于ruby-on-rails - 同一个应用程序中的 Heroku Delayed Job 和 Sidekiq,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41094228/

24 4 0
文章推荐: 将 DataGridComboBoxColumn ItemsSource 绑定(bind)到 RelativeSource FindAncestor 不起作用
文章推荐: installation - Cygwin 没有正确安装
文章推荐: sql - 估计的子树成本大幅下降,糟糕的优化
文章推荐: c# - 为什么不能将 Action 委托(delegate)用作线程池的 WaitCallback?