Sidekiq offers "simple, efficient background processing for Ruby." It's what we use when we need to easily perform parallel work or asynchronous jobs behind the scenes. Learn everything from the basics up through features offered in the Pro and Enterprise versions.
Each lesson focuses on a single aspect of building the project, like modeling the data, building a GraphQL server in Elixir, or building a mobile client for it in Flutter.
free
Introduction to Sidekiq
A basic introduction and overview of the Sidekiq background processing system.
free
Installation and First Job
Installing Sidekiq and writing and executing your first job.
free
Serialization of Arguments
Considerations for data types used in arguments in your workers.
free
Error Handling
A discussion of Sidekiq's retry process, exception monitoring, and idempotence.
free
Signal Handling
Interacting with your Sidekiq worker processes via UNIX signals.
free
Deployment
Deploying a Rails app to Heroku that uses Sidekiq for background processing.
free
API
Diving into Sidekiq's Ruby API.
free
Sidekiq Pro: Reliability and Pausing Queues
Exploring what can go wrong with Sidekiq when workers die unceremoniously and how Sidekiq Pro resolves the issue. Also, examining the ability to pause queues.
free
Sidekiq Pro: Batches and Callbacks
Creating batches of jobs that can be monitored as a group, and having callbacks run when the batch is complete.
free
Sidekiq Pro: Expiring Jobs and Filtering in the Web UI
Handling jobs that have a limited useful time window in the event of busy queues, and filtering retries in the Web UI.
free
Sidekiq Pro: Speedy API Extensions
Sidekiq Pro's speedy API extensions, deleting jobs by `jid` and class, finding jobs by jid, and batch status.
free
Sidekiq Enterprise: Periodic Jobs
Scheduling jobs to run periodically; in other words, "cron for Sidekiq workers".
free
Sidekiq Enterprise: Unique Jobs
Using Sidekiq Enterprise to save you from duplicate jobs.
free
Sidekiq Enterprise: Rate Limiting
Using Sidekiq's Rate Limiters to get around pesky API SLAs.
free
Sidekiq Enterprise: Encryption and Multi-Process
Encrypting secrets at rest, and managing multiple sidekiqs with a single binary
Authors
The code in the applications was produced by:
./josh adams
Josh Adams
I've been building web-based software for businesses for over 18 years. In the last four years I realized that functional programming was in fact amazing, and have been pretty eager since then to help people build software better.
Featured Lessons
Our content library is pretty great, here are a few lessons we think you might like.
free
Flash is dead; Mobile worm; Ionic survey results; AI optimization
Designing an Email Template
Build your own 8-bit character using Sass part IV
Build your own 8-bit character using Sass part III
Build your own 8-bit character using Sass part II
Build your own 8-bit character using Sass Part I
What our Superusers are Saying!
Some other people were willing to publicly state that they like us!
Taylor Dolezal
Software Architect
Smooth Terminal has easily been one of the most helpful resources
on my journey to better understand Elixir and the Phoenix web framework.
James Edward II
Developer
With any language there are so many details to learn. What functions are built-in? How should I structure my code? What tools are available for improving my workflow?
It’s rare to find one source that can answer so many of these questions, but Smooth Terminal does this and more.
Rex Van Der Spuy
Game developer
Smooth Terminal is by far the best resource for learning Elm anywhere, and among the
very best online learning platforms, period.