Concurrency overhaul & reliability fixes
Pre-release
Pre-release
·
105 commits
to main
since this release
This release introduces a JobPool system for proper concurrency management, along with worker timeouts via AbortSignal. The Redis adapter has been refactored to use atomic Lua scripts, replacing the previous lock-based approach for better performance.
Workers now ensure pool completion before shutdown, making graceful termination more predictable.
Commits
- docs(readme): add more features (784f410)
- docs(readme): add benchmark section (b12d59f)
- test(adapter): improve active tracking cleanup (c7c785f)
- refactor(redis): remove verrou in favor of atomic lua script (ba69213)
- refactor(redis): do not check for delayed jobs every pop (648163e)
- chore: add some benchmark (458763e)
- refactor(worker): use AbortSignal for timeout (1da0daa)
- fix(worker): remove console.log (7830615)
- fix(worker): avoid memory leak with job initialization fail (47442eb)
- fix(worker): avoid memory leak when job class is not found (eed85f5)
- fix(worker): avoid memory leak by releasing the lease when job fail (db5fdd3)
- style: lint (62f34d6)
- fix(worker): ensure pool completion before shutting down (690cf06)
- style: lint fix (8e89885)
- feat(worker): add timeout possibility (8ac461f)
- feat: use job pool to ensure proper concurrency (38fd333)
- feat: add JobPool system (34bbbc8)
- chore: add basic readme (96ee73d)
Full Changelog: v0.0.1-alpha...v0.0.1-alpha.0