solid-jobs 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a9ddd8000ed07b176d4e291ba7e6b5c1b6a3d909efe282ea6ace542d676e142
4
- data.tar.gz: 242f4734ef254188dee64f1ce73df43cbb83f6d39840d7e8f59c6017a499a5f3
3
+ metadata.gz: 52c2c82a111ab574881c9efe6f5c692c145b50ad85542844e34de74a44860a8e
4
+ data.tar.gz: 7a23ba9ea19c901c7c888680351b018b8f554cac0192a17195682aaa3725bd82
5
5
  SHA512:
6
- metadata.gz: 8d2bb684bb107820e189f12d4ac709ce8ad43e546bdf2da5933fcd781627655a8897030ed53010861a74619d65afb33fd89466a1c12993d8ab51e4de85f9c2f8
7
- data.tar.gz: 22fb65c94e80dc84dc94f5e6ad3fa9a5047378f45fe29263c5a98817c6a0aeda71f9d54f597a69b0407332e8052f1a5d5da097b97fbd22be912543c56015f78d
6
+ metadata.gz: 63447e81affab81cac25ed04aed7fa8cc8b27d89e5fd6425db087ed0feadc4d950266c35c16df6e91f27f5a5562844610516048ccbc4120f5132f9ab83456970
7
+ data.tar.gz: 3da40a61ca01cd8f868ebc0dd734b925ad0d46852517f34ea73b23cb8e9762c05b09db55caf218729a734975c579cb97d27253666142dbc694e0c5a018df427a
data/CHANGELOG.md CHANGED
@@ -2,7 +2,12 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## [Unreleased]
5
+ ## [0.1.3] - 2026-10-01
6
+
7
+ ### Changed
8
+
9
+ - Require `solid-redis` 1.0.11 and rely on its `solid-resp-ractor` dependency
10
+ instead of declaring and loading the RESP codec directly.
6
11
 
7
12
  ## [0.1.2] - 2026-10-01
8
13
 
@@ -56,5 +61,7 @@ All notable changes to this project will be documented in this file.
56
61
  - Reliable-hot-path and CPU-scaling profilers plus the independent Sidekiq
57
62
  comparison benchmark.
58
63
 
59
- [Unreleased]: https://github.com/nicolasva/solid-jobs/compare/v0.1.0...HEAD
64
+ [0.1.3]: https://github.com/nicolasva/solid-jobs/compare/v0.1.2...v0.1.3
65
+ [0.1.2]: https://github.com/nicolasva/solid-jobs/compare/v0.1.1...v0.1.2
66
+ [0.1.1]: https://github.com/nicolasva/solid-jobs/compare/v0.1.0...v0.1.1
60
67
  [0.1.0]: https://github.com/nicolasva/solid-jobs/releases/tag/v0.1.0
data/README.md CHANGED
@@ -131,20 +131,21 @@ stability. Every measurement runs in a fresh Ruby process; client order
131
131
  alternates and the default report uses the median of six repetitions.
132
132
 
133
133
  The current homogeneous CPU-processing reference uses Ruby 4.0.1,
134
- Sidekiq 8.1.7, a 210,000-iteration integer workload, and 1,000 jobs per case:
134
+ Sidekiq 8.1.7, SolidJobs 0.1.2, a 100,000-iteration integer workload, and
135
+ 2,000 jobs per case:
135
136
 
136
137
  | Concurrency | Sidekiq jobs/s | SolidJobs jobs/s | SolidJobs scaling | Sidekiq CPU-s/1k | SolidJobs CPU-s/1k | Sidekiq RSS | SolidJobs RSS | Sidekiq alloc/job | SolidJobs alloc/job |
137
138
  |---:|---:|---:|---:|---:|---:|---:|---:|---:|---:|
138
- | 1 | 142 | 138 | 100.0% | 6.95 | 7.11 | 41.5 MiB | 72.0 MiB | 129.8 | 89.9 |
139
- | 2 | 144 | 272 | 98.7% | 6.94 | 7.16 | 41.8 MiB | 77.6 MiB | 117.5 | 81.3 |
140
- | 4 | 143 | 539 | 97.8% | 6.99 | 7.18 | 41.9 MiB | 71.4 MiB | 111.9 | 77.2 |
141
- | 8 | 144 | 957 | 86.7% | 6.94 | 8.01 | 42.2 MiB | 69.5 MiB | 108.7 | 75.4 |
142
-
143
- At eight concurrency units, SolidJobs reaches 957 jobs/s versus 144 jobs/s
144
- for one Sidekiq process. This is Ractor parallelism rather than equal CPU
145
- efficiency: SolidJobs consumes 766% CPU and 8.01 CPU-seconds per 1,000 jobs,
146
- while Sidekiq consumes 100% CPU and 6.94 CPU-seconds per 1,000 jobs. SolidJobs
147
- also uses more RSS, but reaches 13.77 jobs/s/MiB versus 3.41 for Sidekiq.
139
+ | 1 | 289 | 281 | 100.0% | 3.35 | 3.40 | 41.4 MiB | 81.8 MiB | 117.2 | 84.0 |
140
+ | 2 | 296 | 549 | 97.7% | 3.38 | 3.44 | 41.7 MiB | 83.1 MiB | 116.8 | 79.7 |
141
+ | 4 | 298 | 1,090 | 97.0% | 3.37 | 3.43 | 41.8 MiB | 79.5 MiB | 111.1 | 77.7 |
142
+ | 8 | 298 | 2,053 | 91.4% | 3.36 | 3.67 | 42.4 MiB | 74.1 MiB | 108.1 | 74.3 |
143
+
144
+ At eight concurrency units, SolidJobs reaches 2,053 jobs/s versus 298 jobs/s
145
+ for Sidekiq. This is Ractor parallelism rather than equal CPU efficiency:
146
+ SolidJobs consumes 752.6% CPU and 3.67 CPU-seconds per 1,000 jobs, while
147
+ Sidekiq consumes 100.2% CPU and 3.36 CPU-seconds per 1,000 jobs. SolidJobs
148
+ also uses more RSS, but reaches 27.71 jobs/s/MiB versus 7.03 for Sidekiq.
148
149
 
149
150
  These are local synthetic measurements, not application-capacity claims.
150
151
  Queue p95/p99 values in this run use sparse sampling and are excluded from the
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SolidJobs
4
- VERSION = "0.1.2"
4
+ VERSION = "0.1.3"
5
5
  end
6
-
data/lib/solid_jobs.rb CHANGED
@@ -3,7 +3,6 @@
3
3
  require "base_service"
4
4
  require "callback_collection"
5
5
  require "solid_redis"
6
- require "solid_resp_ractor"
7
6
 
8
7
  require_relative "solid_jobs/version"
9
8
  require_relative "solid_jobs/errors"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solid-jobs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicolas Vandenbogaerde
@@ -60,7 +60,7 @@ dependencies:
60
60
  version: '1.0'
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: 1.0.10
63
+ version: 1.0.11
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
@@ -70,27 +70,7 @@ dependencies:
70
70
  version: '1.0'
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: 1.0.10
74
- - !ruby/object:Gem::Dependency
75
- name: solid-resp-ractor
76
- requirement: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - "~>"
79
- - !ruby/object:Gem::Version
80
- version: '0.1'
81
- - - ">="
82
- - !ruby/object:Gem::Version
83
- version: 0.1.3
84
- type: :runtime
85
- prerelease: false
86
- version_requirements: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - "~>"
89
- - !ruby/object:Gem::Version
90
- version: '0.1'
91
- - - ">="
92
- - !ruby/object:Gem::Version
93
- version: 0.1.3
73
+ version: 1.0.11
94
74
  - !ruby/object:Gem::Dependency
95
75
  name: minitest
96
76
  requirement: !ruby/object:Gem::Requirement