Sidekiq

From Wikipedia, the free encyclopedia

Sidekiq is an open source background job framework written in Ruby.[3]

DeveloperMike Perham
Initial releaseFebruary 5, 2012; 14 years ago (2012-02-05)[1]
Stable release
8.1.0[2] Edit this on Wikidata / 11 December 2025; 3 months ago (11 December 2025)
Written inRuby
Quick facts Developer, Initial release ...
Sidekiq
DeveloperMike Perham
Initial releaseFebruary 5, 2012; 14 years ago (2012-02-05)[1]
Stable release
8.1.0[2] Edit this on Wikidata / 11 December 2025; 3 months ago (11 December 2025)
Written inRuby
Operating systemCross-platform
Available inEnglish
TypeWorking queue
LicenseLGPLv3
Websitesidekiq.org Edit this at Wikidata
Repository
Close

Architecture

Sidekiq uses Redis for its persistent data store. Each job is stored as a map of key/value pairs, serialized using JSON. Developers can use any programming language to create jobs by constructing the necessary JSON and pushing it into the queue in Redis. A Sidekiq process reads jobs from that Redis queue, using the First In First Out (FIFO) model, and executes the corresponding Ruby code. Job processing is asynchronous, allowing a web-serving thread to continue serving new requests rather than be blocked processing slower tasks.

Sidekiq can be used standalone, or integrated with a Ruby on Rails web application. Sidekiq is multithreaded so multiple jobs can execute concurrently within one process. A large scale application may have dozens or hundreds of Sidekiq processes executing thousands of jobs per second.

Sidekiq comes with a graphical web interface for inspecting and managing job data.

Business model

Sidekiq uses an Open Core business model to provide sustainability for the open source project.[4] The company behind Sidekiq, Contributed Systems, sells closed-source commercial versions, Sidekiq Pro and Sidekiq Enterprise, which contain additional features not included in the open source version.

Reception and use

Sidekiq is described as “well-known queue processing software”.[5]

It's used by Ruby applications like Mastodon, Diaspora,[6] GitLab and Discourse, that need to run tasks in the background, without making web requests wait. Sidekiq is also used to submit threads to the PHASTER phage search tool.[7]

References

Related Articles

Wikiwand AI