首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Clockwork需要自己的进程吗?

Clockwork需要自己的进程吗?
EN

Stack Overflow用户
提问于 2015-03-27 06:22:09
回答 1查看 191关注 0票数 6

我在几个不同的地方看到人们说,clockwork应该在它自己的dyno上运行,使用一个类似于下面这样的procfile (来自heroku的例子):

代码语言:javascript
复制
clock: bundle exec clockwork lib/clock.rb

有什么理由不让它运行在与工人相同的dyno上吗?使用如下所示的过程:

代码语言:javascript
复制
worker: bundle exec clockwork clock.rb & bundle exec sidekiq -C config/sidekiq.yml -L log/sidekiq.log

这种方式似乎工作得很好,但我想知道为什么人们说不要这样做的根本原因。任何指导都将不胜感激。提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-10-05 09:57:59

我最近开始同时运行sidekiq和clockwork,就像这样:

代码语言:javascript
复制
web: bundle exec puma -C config/puma.rb
worker: bundle exec clockwork clock.rb & bundle exec sidekiq & wait -n
# ^ https://help.heroku.com/CTFS2TJK/how-do-i-run-multiple-processes-on-a-dyno

到目前为止还没有看到任何问题...这是我们在heroku主机上每月节省的25美元。

说,如果伙伴死了,会发生什么?

通常sidekiq不会死(至少对我来说是这样),我认为这是因为sidekiq只是在管理作业。实际的工作发生在具有perform()方法的类中,当这些方法“提升/失败”时,它并不会使sidekiq父级停止。Sidekiq有一个GUI,它显示重试队列和死队列,因此死作业将在其中一个位置结束。

顺便说一句,Heroku有一篇关于在单个“dyno”中运行多个作业的文章:https://help.heroku.com/CTFS2TJK/how-do-i-run-multiple-processes-on-a-dyno

OP说:

我在几个不同的地方看到过人们说的

不过,如果你有链接,我会很好奇地阅读这些评论。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29289971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档