防止Cron多次运行Rails Loadbalancer

时间:2017-05-29 16:59:40

标签: ruby-on-rails amazon-web-services cron

我有一个问题,我有一个负载均衡器和两个我的网络应用实例,后台运行cronjobs。我如何在Rails中确保cronjob只在两个实例之间运行一次?

1 个答案:

答案 0 :(得分:0)

您是否需要在两台应用服务器上安装cron?为什么不只有一个工作服务器?

如果您只能拥有一个运行作业的服务器,您可以将值保存到数据库,指示作业是否已运行,只需在执行作业之前查看该值,像:

assertThat(Collections.singleton("good"), not(hasItem(Arrays.asList("bad", "good"))));