v1.0.9-beta.022 - perf(queue): optimize background jobs to prevent UI starvation
Implemented three throttling techniques to the background queue engine to prevent performance degradation and UI lag during heavy scheduled tasks:
- Reduced BullMQ worker concurrency from 2 to 1 to ensure only one heavy CPU task runs at a time, preventing Node.js main thread starvation.
- Decreased METADATA_SYNC batch size from 50 to 15 to prevent SQLite database locks, reduce memory spikes, and better respect upstream API rate limits.
- Increased the event loop yield delay in EMBED_METADATA from 100ms to 1000ms, forcing synchronous CPU-heavy zip operations to pause and allow the web server to serve pending UI requests smoothly.