Migrate task queue from in-memory to BullMQ + Redis
Publish Image / publish (push) Successful in 36s
Publish Image / publish (push) Successful in 36s
Replace the volatile in-memory Map/Set queue with BullMQ backed by Redis for persistence across restarts, automatic retry with exponential backoff, and non-blocking workspace cleanup. - Two queues: workspace-create (concurrency-limited) and workspace-cleanup (with polling instead of sleep-based stop→delete) - Active workspaces tracked in Redis hash for dedup across restarts - Stale sweep every 10 minutes catches orphaned workspaces - Graceful shutdown on SIGTERM/SIGINT - Replace node-cron with BullMQ repeatable jobs Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
a6ff7b7fb5
commit
13e96e9356
+2
-2
@@ -13,12 +13,12 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@hono/node-server": "^1.13.8",
|
||||
"bullmq": "^5.34.8",
|
||||
"hono": "^4.7.6",
|
||||
"node-cron": "^3.0.3"
|
||||
"ioredis": "^5.6.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^22.15.3",
|
||||
"@types/node-cron": "^3.0.11",
|
||||
"tsx": "^4.19.4",
|
||||
"typescript": "^5.8.3",
|
||||
"eslint": "^9.25.1",
|
||||
|
||||
Reference in New Issue
Block a user