【问题标题】:Add time-lag in whenever with capistrano between same role?在同一角色之间使用 capistrano 时添加时间延迟?
【发布时间】:2013-11-01 16:04:22
【问题描述】:

我想在同一角色之间添加时间延迟。例如角色:app = [app1,app2,app3]

我的期望(伪代码):

app1: "1 * * * * rake 'heavy:task'"
app2: "3 * * * * rake 'heavy:task'"
app3: "2 * * * * rake 'heavy:task'"

1,2,3 不重要,但时滞很重要。

如何在同一角色之间添加时滞?

我的实际日程安排.rb:

every :hour, roles: [:app] do
  rake 'heavy:task'
end

实际结果(伪代码):

app1: "0 * * * * rake 'heavy:task'"
app2: "0 * * * * rake 'heavy:task'"
app3: "0 * * * * rake 'heavy:task'"

【问题讨论】:

    标签: capistrano crontab whenever


    【解决方案1】:

    我对此很感兴趣。随机休眠6秒,服务器端执行

    every :hour, roles: [:app] do
     on :all, in: :parallel do
      execute 'sleep #{rand(6)}'
      rake 'heavy:task'
     end
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多