如何在重启之前通过capistrano删除sidekiq特定的redis缓存

时间:2014-02-17 11:32:34

标签: redis capistrano sidekiq

在rails代码部署中,sidekiq重新启动,我们希望在重新启动之前从实例中删除sidekiq特定的redis缓存。

这是我们想要实现的目标 1. sidekiq:停止 2.连接到sideiq指向的远程redis 3.选择数据库(比如选择1)。 3.删除缓存(比如flushall)

我应该如何通过capistrano自动执行此操作。

1 个答案:

答案 0 :(得分:2)

您可以通过直接调用Sidekiq队列,或者在步骤#3中使用他们自己的Rake任务来刷新Sidekiq队列

 Sidekiq::ScheduledSet.new.clear #clear the scheduled queue..
 Sidekiq::RetrySet.new.clear #clear any quequed retries.