作为持续交付管道的一部分,我们正在将 sidekiq 工作器版本部署到 Cloud Foundry。如果他们不再是最新版本,我们需要停止工人处理新工作。所以:
- Worker v1 正在运行并执行 30 分钟的作业。
- 我们部署了工作代码的 v2。
- v1 应继续当前作业,但不启动任何新作业。
CloudFoundry 不允许我们发送USR1,因此我们需要一个解决方案,允许工作人员在每个工作开始之前确定他们是否是最新版本。
作为持续交付管道的一部分,我们正在将 sidekiq 工作器版本部署到 Cloud Foundry。如果他们不再是最新版本,我们需要停止工人处理新工作。所以:
CloudFoundry 不允许我们发送USR1,因此我们需要一个解决方案,允许工作人员在每个工作开始之前确定他们是否是最新版本。