每当 gem 仅在一台机器上有 cronjob 时?

发布于 2024-10-18 03:56:25 字数 112 浏览 4 评论 0原文

我们大规模部署了大约十几台服务器。我们想使用每当 gem,但我无法找到一种方法来说明 cron 作业应该在哪台机器上进行!我们只希望这些作业在执行后台作业的服务器上运行。

有没有办法指定这一点?

We have a large deployment of around a dozen servers. We'd like to use the Whenever gem but I can't figure out a way to say which machine the cron jobs should go on! We only want these jobs to run on our server that does background jobs.

Is there a way to specify this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

尝蛊 2024-10-25 03:56:25

如果您使用 Capistrano 部署项目并使用默认的 Whenever Recipe< /a>,您可以创建一个新的 Capistrano 角色

role :whenever, "192.168.1.1"

,并在您的 deploy.rb 文件中设置该角色

set :whenever_roles, "whenever"

,这样任务将只在指定的服务器上执行。

If you deploy the project with Capistrano and you use the default Whenever recipe, you can create a new Capistrano role

role :whenever, "192.168.1.1"

and set the role in your deploy.rb file

set :whenever_roles, "whenever"

In this way, the task will be executed only on the specified server.

苹果你个爱泡泡 2024-10-25 03:56:25

whenever 已预先配置为针对 db 角色运行,因此如果您的 db 角色也是后台计算机的角色,则无需执行 'role :whenever, "192.168.0.1"' hack。请参阅代码

https://github.com/javan/每当/blob/master/lib/每当/capistrano.rb#L2

whenever is preconfigured to run against the db role, so if your db role is also the background machine's role you don't have to do the 'role :whenever, "192.168.0.1"' hack. see the codes

https://github.com/javan/whenever/blob/master/lib/whenever/capistrano.rb#L2

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文