* Gets the concurrency setting for a queue from environment variables. * Env var format: {QUEUE_NAME}_CONCURRENCY (e.g., EVENTS_0_CONCURRENCY=32)
(queueName: string, defaultValue = 1)
| 91 | * Env var format: {QUEUE_NAME}_CONCURRENCY (e.g., EVENTS_0_CONCURRENCY=32) |
| 92 | */ |
| 93 | function getConcurrencyFor(queueName: string, defaultValue = 1): number { |
| 94 | const envKey = `${queueName.toUpperCase().replace(/[^A-Z0-9]/g, '_')}_CONCURRENCY`; |
| 95 | const value = process.env[envKey]; |
| 96 | |
| 97 | if (value) { |
| 98 | const parsed = Number.parseInt(value, 10); |
| 99 | if (!Number.isNaN(parsed) && parsed > 0) { |
| 100 | return parsed; |
| 101 | } |
| 102 | } |
| 103 | |
| 104 | return defaultValue; |
| 105 | } |
| 106 | |
| 107 | export function bootWorkers() { |
| 108 | const enabledQueues = getEnabledQueues(); |