Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mperham/sidekiq.cr
Simple, efficient job processing for Crystal
https://github.com/mperham/sidekiq.cr
Last synced: 8 days ago
JSON representation
Simple, efficient job processing for Crystal
- Host: GitHub
- URL: https://github.com/mperham/sidekiq.cr
- Owner: hugopl
- License: lgpl-3.0
- Created: 2016-05-16T05:00:34.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-04-19T20:10:26.000Z (over 1 year ago)
- Last Synced: 2024-05-22T22:08:44.829Z (6 months ago)
- Language: Crystal
- Homepage: http://sidekiq.org
- Size: 535 KB
- Stars: 767
- Watchers: 25
- Forks: 73
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: code_of_conduct.md
Awesome Lists containing this project
- awesome-crystal - sidekiq.cr - Simple, efficient job processing (Queues and Messaging)
- awesome-crystal - sidekiq.cr - Simple, efficient job processing (Queues and Messaging)
- awesome-crystal - sidekiq.cr - Simple, efficient job processing (Queues and Messaging)
README
# Sidekiq.cr
[![Build Status](https://github.com/mperham/sidekiq.cr/actions/workflows/build.yml/badge.svg?branch=master)](https://github.com/mperham/sidekiq.cr/actions/workflows/build.yml)
Sidekiq is a well-regarded background job framework for Ruby. Now we're
bringing the awesomeness to Crystal, a Ruby-like language. Why? To
give you options. Ruby is friendly and flexible but not terribly fast.
Crystal is statically-typed, compiled and **very fast** but retains a similar syntax to
Ruby.Rough, initial benchmarks on macOS 10.14.5, ruby 2.7.2:
Runtime | RSS | Time | Throughput
--------|-----|------|-------------
Sidekiq 6.2.0 | 55MB | 16.4 | 6,100 jobs/sec
Sidekiq 6.2.0/hiredis | 49MB | 13.0 | 7,900 jobs/sec
Crystal 0.35.1 | 15MB | 3.8 | 26,000 jobs/secIf you have jobs which are CPU-intensive or require very high throughput,
Crystal is an excellent alternative to native Ruby extensions. It
compiles to a single executable so deployment is much easier than Ruby.## Getting Started
Please see the [wiki](https://github.com/mperham/sidekiq.cr/wiki) for in-depth documentation and how to get
started using Sidekiq.cr in your own app.## Support
Sidekiq.cr is community-supported and **not** commercially supported by @mperham and Contributed Systems.
General maintenance and bug fixes are always welcomed.## Help wanted
See [the issues](https://github.com/mperham/sidekiq.cr/issues) for chores and other ideas to help.
Things that do not exist and probably won't ever:
* Support for daemonization, pidfiles, log rotation - use Upstart/Systemd
* Delayed extensions - too dynamic for CrystalThe Ruby and Crystal versions of Sidekiq **must** remain data compatible in Redis.
Both versions should be able to create and process jobs from each other.
Their APIs **are not** and should not be identical but rather idiomatic to
their respective languages.## Naming
Sidekiq is a registered trademark of [Contributed Systems](https://sidekiq.org) who has granted use of the name to this project.
## Thanks
Originally developed by Mike Perham, http://www.mikeperham.com. Maintained by Hugo Parente Lima.