【发布时间】:2021-08-06 12:23:55
【问题描述】:
当我启动 sidekiq 进程时,它似乎删除了所有排队的作业。我可以使用 Sidekiq Web UI 验证这一点。当进程启动时,入队选项卡始终重置为 0,并且已处理选项卡中的数字不会更改。我还可以看到从 redis 中删除的作业数据。这是预期的吗?似乎不可能在不丢失所有预定作业的情况下重新启动工作人员。
【问题讨论】:
标签: sidekiq
当我启动 sidekiq 进程时,它似乎删除了所有排队的作业。我可以使用 Sidekiq Web UI 验证这一点。当进程启动时,入队选项卡始终重置为 0,并且已处理选项卡中的数字不会更改。我还可以看到从 redis 中删除的作业数据。这是预期的吗?似乎不可能在不丢失所有预定作业的情况下重新启动工作人员。
【问题讨论】:
标签: sidekiq
我想通了。我的应用在启动时调用了Rails.cache.clear,实际上调用了Redis的flush方法,清除了整个数据库:
https://github.com/redis-store/redis-store/issues/82
在我的情况下,解决方案是在启动时停止调用 Redis.cache.clear(或者永远停止调用),但我也可以为我的 sidekiq 作业使用单独的 redis 数据库。
【讨论】: