ixti/sidekiq-throttled

[Main Branch] Alternative for Enhanced Queues Tab?

OskarEichler opened this issue ยท 9 comments

@ixti We saw that the new main branch got rid of the Enhanced Queues Tab. We really liked the simplicity of the enhanced UI to easily be able to pause and resume queues. Is there an alternative to get back this functionality?

Or alternative question: What was the reason to remove it / is there any possibility to bring it back?

It's definitely a super handy feature that we use regularly, and we will need to find an alternative before upgrading.

ixti commented

The reason was a combination of my misjudgement of how useful this feature was and desire to simplify the code. I will bring back ability to pause queues (and UI) this week.

Amazing thanks so much @ixti

Highly appreciate it!! ๐Ÿ™Œ๐Ÿผ

ixti commented

I've started work on bringing it back (as a separate gem that will be integrated into this one) but haven't finished it yet. Hope to finish it this week.

The idea is that it will become completely optional, and possible to have queues pauser without throttling (when needed)

Very exciting!! Thank you @ixti ๐Ÿ™๐Ÿผ

ixti commented

Still have some work to do to close this, but with #145 merged in, you can use (still in alpha, until I will write specs for all the parts) sidekiq-pauzer gem:

  • Add gem "sidekiq-pauzer", ">= 1.0.0.alpha", "< 2" to your Gemfile
  • Add require "sidekiq/pauzer/web" in addition to where you have require "sidekiq/web"

@ixti Amazing thank you! Just tested it locally and all running well! Gonna get it deployed on production this week and report back! ๐Ÿค˜๐Ÿผ

ixti commented

I've released sidekiq-pauzer-1.0.0. Will work on better integration with sidekiq-throttled over the next couple of weeks. Planning on requiring explicit enabling API, something like:

Sidekiq::Throttled.configure do |c|
  c.use :pauzer
end

As of now, the integration is implicit, just add gem "sidekiq-pauzer", "~> 1.0.0" in your Gemfile. To have pause/resume buttons in the control panel UI:

require "sidekiq/web"
require "sidekiq/pauzer/web"
ixti commented

I've releazed sidekiq-throttled v1.0.0.

As it was said earlier, it will not have the queue pausing feature. In order to bring it back you should add sidekiq-pauzer to your gems:

gem "sidekiq-throttled", "~> 1.0.0"
gem "sidekiq-pauzer", "~> 4.0.0"

Then configure both:

# Main API
require "sidekiq"
require "sidekiq/throttled"
require "sidekiq/pauzer"

# Web UI
require "sidekiq/web"
require "sidekiq/throttled/web"
require "sidekiq/pauzer/web"