Skip to content

Instantly share code, notes, and snippets.

@sethhorsley
Last active December 31, 2024 14:58

Revisions

  1. sethhorsley revised this gist Dec 21, 2023. 1 changed file with 6 additions and 6 deletions.
    12 changes: 6 additions & 6 deletions background-job-comparison.md
    Original file line number Diff line number Diff line change
    @@ -1,19 +1,19 @@

    | Features | Sidekiq | Sidekiq Pro | good_job | solid_queue |
    | ------------- | --- | ------------- | ------ | ----------- |
    | Scheduled Jobs | 🟒 | 🟒 | 🟒 |
    | Batches | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Batches) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#batches) |
    | Scheduled Jobs | 🟒 | 🟒 | 🟒 | 🟒
    | Batches | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Batches) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#batches) | ?
    | Reliability | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Reliability) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#goodjob)| 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#jobs-and-transactional-integrity)
    | Search in web ui | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)| 🟠
    | Worker Metrics | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Metrics) | πŸ”΅ [[1]](https://github.com/discourse/prometheus_exporter#goodjob-metrics) [[2]](https://github.com/bensheldon/good_job/issues/750) [[3]](https://github.com/bensheldon/good_job/issues/532) | ?
    | Expiring-Jobs/Timeouts | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Expiring-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#timeouts) | 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#threads-processes-and-signals)
    | Rate-Limiting/Throttling | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rate-Limiting)| πŸ”΅ [[1]](https://github.com/bensheldon/good_job/issues/315) | ?
    | Cron Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Periodic-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#cron-style-repeatingrecurring-jobs)| 🟠 coming soon |
    | Unique Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Unique-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job#concurrency-controls) [[2]](https://github.com/bensheldon/good_job/issues/1084)| 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#solid-queue)
    | Rolling Restarts | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Long-Running Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes) | WIPPPPPP
    | Encryption | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Encryption) | 🟒 [[1]](https://github.com/bensheldon/good_job/issues/561) | ?
    | Rolling Restarts | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes) | ?
    | Long-Running Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes) | ?
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes) | 🟒
    | Encryption | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Encryption) | 🟒 [[1]](https://github.com/bensheldon/good_job/issues/561) | probably same as good_job
    | WEB UI AUTHORIZATION | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard) | 🟠 coming soon


  2. sethhorsley revised this gist Dec 21, 2023. 1 changed file with 4 additions and 4 deletions.
    8 changes: 4 additions & 4 deletions background-job-comparison.md
    Original file line number Diff line number Diff line change
    @@ -12,9 +12,9 @@
    | Unique Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Unique-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job#concurrency-controls) [[2]](https://github.com/bensheldon/good_job/issues/1084)| 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#solid-queue)
    | Rolling Restarts | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Long-Running Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Encryption | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Encryption) | 🟒 [[1]](https://github.com/bensheldon/good_job/issues/561)
    | WEB UI AUTHORIZATION | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes) | WIPPPPPP
    | Encryption | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Encryption) | 🟒 [[1]](https://github.com/bensheldon/good_job/issues/561) | ?
    | WEB UI AUTHORIZATION | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard) | 🟠 coming soon


    🟒 Fully implemented
    @@ -23,6 +23,6 @@

    🟠 Partially implemented or being implemented

    **?** - Status Unknown
    **?** - Status Unknown / not enough documentation

    πŸ”΄ Not implemented
  3. sethhorsley revised this gist Dec 21, 2023. 1 changed file with 12 additions and 10 deletions.
    22 changes: 12 additions & 10 deletions background-job-comparison.md
    Original file line number Diff line number Diff line change
    @@ -1,15 +1,15 @@

    | Features | Sidekiq | Sidekiq Pro | good_job |
    | ------------- | --- | ------------- | -- |
    | Features | Sidekiq | Sidekiq Pro | good_job | solid_queue |
    | ------------- | --- | ------------- | ------ | ----------- |
    | Scheduled Jobs | 🟒 | 🟒 | 🟒 |
    | Batches | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Batches) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#batches) |
    | Reliability | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Reliability) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#goodjob)|
    | Search in web ui | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)
    | Worker Metrics | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Metrics) | πŸ”΅ [[1]](https://github.com/discourse/prometheus_exporter#goodjob-metrics) [[2]](https://github.com/bensheldon/good_job/issues/750) [[3]](https://github.com/bensheldon/good_job/issues/532)
    | Expiring-Jobs/Timeouts | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Expiring-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#timeouts)
    | Rate-Limiting/Throttling | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rate-Limiting)| πŸ”΅ [[1]](https://github.com/bensheldon/good_job/issues/315)
    | Cron Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Periodic-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#cron-style-repeatingrecurring-jobs)|
    | Unique Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Unique-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job#concurrency-controls) [[2]](https://github.com/bensheldon/good_job/issues/1084)|
    | Reliability | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Reliability) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#goodjob)| 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#jobs-and-transactional-integrity)
    | Search in web ui | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)| 🟠
    | Worker Metrics | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Metrics) | πŸ”΅ [[1]](https://github.com/discourse/prometheus_exporter#goodjob-metrics) [[2]](https://github.com/bensheldon/good_job/issues/750) [[3]](https://github.com/bensheldon/good_job/issues/532) | ?
    | Expiring-Jobs/Timeouts | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Expiring-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#timeouts) | 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#threads-processes-and-signals)
    | Rate-Limiting/Throttling | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rate-Limiting)| πŸ”΅ [[1]](https://github.com/bensheldon/good_job/issues/315) | ?
    | Cron Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Periodic-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#cron-style-repeatingrecurring-jobs)| 🟠 coming soon |
    | Unique Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Unique-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job#concurrency-controls) [[2]](https://github.com/bensheldon/good_job/issues/1084)| 🟒 [[1]](https://github.com/basecamp/solid_queue?tab=readme-ov-file#solid-queue)
    | Rolling Restarts | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Long-Running Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    @@ -21,6 +21,8 @@

    πŸ”΅ Alternative solution implemented

    🟠 Partially implemented
    🟠 Partially implemented or being implemented

    **?** - Status Unknown

    πŸ”΄ Not implemented
  4. sethhorsley created this gist Dec 21, 2023.
    26 changes: 26 additions & 0 deletions background-job-comparison.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,26 @@

    | Features | Sidekiq | Sidekiq Pro | good_job |
    | ------------- | --- | ------------- | -- |
    | Scheduled Jobs | 🟒 | 🟒 | 🟒 |
    | Batches | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Batches) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#batches) |
    | Reliability | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Reliability) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#goodjob)|
    | Search in web ui | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)
    | Worker Metrics | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Metrics) | πŸ”΅ [[1]](https://github.com/discourse/prometheus_exporter#goodjob-metrics) [[2]](https://github.com/bensheldon/good_job/issues/750) [[3]](https://github.com/bensheldon/good_job/issues/532)
    | Expiring-Jobs/Timeouts | πŸ”΄ |🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Pro-Expiring-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#timeouts)
    | Rate-Limiting/Throttling | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rate-Limiting)| πŸ”΅ [[1]](https://github.com/bensheldon/good_job/issues/315)
    | Cron Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Periodic-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#cron-style-repeatingrecurring-jobs)|
    | Unique Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Unique-Jobs) | 🟒 [[1]](https://github.com/bensheldon/good_job#concurrency-controls) [[2]](https://github.com/bensheldon/good_job/issues/1084)|
    | Rolling Restarts | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Long-Running Jobs | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Rolling-Restarts) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Multi-Process | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Multi-Process) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#optimize-queues-threads-and-processes)
    | Encryption | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Encryption) | 🟒 [[1]](https://github.com/bensheldon/good_job/issues/561)
    | WEB UI AUTHORIZATION | πŸ”΄ | 🟒 [[1]](https://github.com/sidekiq/sidekiq/wiki/Ent-Web-UI) | 🟒 [[1]](https://github.com/bensheldon/good_job?tab=readme-ov-file#dashboard)


    🟒 Fully implemented

    πŸ”΅ Alternative solution implemented

    🟠 Partially implemented

    πŸ”΄ Not implemented