This PR introduces the installation of SolidQueue to replace Sidekiq for background job processing. It also includes upgrades to Rails and Ruby to ensure compatibility and address deprecation warnings.
Introduction to Solid Queue
SolidQueue is a new backend for ActiveJob that processes jobs in the database instead of memory, offering better integration with Heroku and Puma. This simplifies deployment by eliminating the need for a separate Redis instance, making job processing and monitoring easier and more affordable.
Changes Made
1. Installed SolidQueue:
Replaced Sidekiq with SolidQueue for background job processing.
SolidQueue offers better integration with Heroku and Puma, providing more efficient job handling and resource management in production environments.
2. Upgraded Rails:
Upgraded Rails from version 7.0.6 to 7.1.4.
This upgrade was necessary due to a dependency conflict with mission_control-jobs, which requires Rails ~> 7.1.
3. Upgraded Ruby:
Upgraded Ruby from version 3.1.2 to 3.2 in Gemfile and WorkFlow Github
This upgrade was done to address deprecation warnings and ensure compatibility with the latest Rails version.
How to Update Local Master or Branch for Testing
Install New Dependencies:
Ensure you have the latest Ruby version installed
rbenv install 3.2.0rbenv local 3.2.0
Install the updated gems
bundle install
Run Migrations
rails db:migrate
Start the Application. Solid Queue is started with puma, so no need to add it to the Procfile
dev
We provide a Puma plugin if you want to run the Solid Queue's supervisor together with Puma and have Puma monitor and manage it. You just need to add plugin :solid_queue to your puma.rb configuration.
What does this PR do?
This PR introduces the installation of SolidQueue to replace Sidekiq for background job processing. It also includes upgrades to Rails and Ruby to ensure compatibility and address deprecation warnings.
Introduction to Solid Queue
SolidQueue is a new backend for ActiveJob that processes jobs in the database instead of memory, offering better integration with Heroku and Puma. This simplifies deployment by eliminating the need for a separate Redis instance, making job processing and monitoring easier and more affordable.
Changes Made
1. Installed SolidQueue:
2. Upgraded Rails:
3. Upgraded Ruby:
How to Update Local Master or Branch for Testing
Install New Dependencies:
rbenv install 3.2.0
rbenv local 3.2.0
bundle install
rails db:migrate
dev
_https://github.com/rails/solid_queue?tab=readme-ov-file#puma-plugin_