brandonhilkert / sucker_punch

Sucker Punch is a Ruby asynchronous processing library using concurrent-ruby, heavily influenced by Sidekiq and girl_friday.
MIT License
2.65k stars 114 forks source link

Differences between sucker_punch and ActiveJob::QueueAdapters::AsyncAdapter #230

Closed pjmartorell closed 3 years ago

pjmartorell commented 4 years ago

Hi! I'm using SuckerPunch with ActiveJob and I was wondering what are the differences, pros and cons of using SuckerPunch compared to ActiveJob::QueueAdapters::AsyncAdapter (see https://api.rubyonrails.org/classes/ActiveJob/QueueAdapters/AsyncAdapter.html and https://github.com/rails/rails/blob/157920aead96865e3135f496c09ace607d5620dc/activejob/lib/active_job/queue_adapters/async_adapter.rb). Both store jobs in memory and use Concurrent Ruby.

Could you clarify what are the differences and if it's worth to use SuckerPunch taking into account that Async adapter is included in Rails out of the box?

Raou1d commented 3 years ago

I'm wondering the same thing

brandonhilkert commented 3 years ago

Not much at this point. SuckerPunch existed before ActiveJob, but ultimately uses similar code under the covers. I'd recommend using AsyncAdapter if you're using Rails.

alfuken commented 2 years ago

Hey @brandonhilkert, that's some interesting information. Seeing that it have been asked here a few times now, could you, please, add this information to the readme? That'd be really handy. Thanks!

brandonhilkert commented 2 years ago

@alfuken Happy to review a PR.

alfuken commented 2 years ago

@brandonhilkert 👍