@monque/core 1.1.2 → 1.2.0

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.
package/dist/index.d.cts CHANGED
@@ -635,7 +635,8 @@ interface WorkerOptions {
635
635
  * maxRetries: 10,
636
636
  * baseRetryInterval: 1000,
637
637
  * shutdownTimeout: 30000,
638
- * defaultConcurrency: 5,
638
+ * workerConcurrency: 5, // Per-worker default
639
+ * instanceConcurrency: 20, // Global instance limit
639
640
  * });
640
641
  * ```
641
642
  */
@@ -676,7 +677,18 @@ interface MonqueOptions {
676
677
  shutdownTimeout?: number;
677
678
  /**
678
679
  * Default number of concurrent jobs per worker.
680
+ *
681
+ * This is the per-worker concurrency limit applied when a worker is registered
682
+ * without specifying its own `concurrency` option.
683
+ *
684
+ * @default 5
685
+ */
686
+ workerConcurrency?: number;
687
+ /**
688
+ * Default number of concurrent jobs per worker.
689
+ *
679
690
  * @default 5
691
+ * @deprecated Use `workerConcurrency` instead. Will be removed in a future major version.
680
692
  */
681
693
  defaultConcurrency?: number;
682
694
  /**
@@ -731,6 +743,33 @@ interface MonqueOptions {
731
743
  */
732
744
  interval?: number;
733
745
  } | undefined;
746
+ /**
747
+ * Maximum number of concurrent jobs processed by this instance across all registered workers.
748
+ *
749
+ * If reached, the scheduler will stop claiming new jobs until active jobs complete.
750
+ * Use this to prevent a single instance from overwhelming system resources.
751
+ *
752
+ * Note: This is an instance-level limit. Each worker still respects its own `concurrency`
753
+ * setting, but the total across all workers cannot exceed this limit.
754
+ *
755
+ * @example
756
+ * ```typescript
757
+ * const monque = new Monque(db, {
758
+ * instanceConcurrency: 10, // Instance processes max 10 jobs total
759
+ * workerConcurrency: 5, // Each worker defaults to 5 concurrent jobs
760
+ * });
761
+ *
762
+ * // With 3 workers at concurrency 5, normally 15 jobs could run.
763
+ * // With instanceConcurrency: 10, only 10 jobs run at any time.
764
+ * ```
765
+ */
766
+ instanceConcurrency?: number | undefined;
767
+ /**
768
+ * Maximum number of concurrent jobs processed by this instance across all registered workers.
769
+ *
770
+ * @deprecated Use `instanceConcurrency` instead. Will be removed in a future major version.
771
+ */
772
+ maxConcurrency?: number | undefined;
734
773
  }
735
774
  //#endregion
736
775
  //#region src/scheduler/monque.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -635,7 +635,8 @@ interface WorkerOptions {
635
635
  * maxRetries: 10,
636
636
  * baseRetryInterval: 1000,
637
637
  * shutdownTimeout: 30000,
638
- * defaultConcurrency: 5,
638
+ * workerConcurrency: 5, // Per-worker default
639
+ * instanceConcurrency: 20, // Global instance limit
639
640
  * });
640
641
  * ```
641
642
  */
@@ -676,7 +677,18 @@ interface MonqueOptions {
676
677
  shutdownTimeout?: number;
677
678
  /**
678
679
  * Default number of concurrent jobs per worker.
680
+ *
681
+ * This is the per-worker concurrency limit applied when a worker is registered
682
+ * without specifying its own `concurrency` option.
683
+ *
684
+ * @default 5
685
+ */
686
+ workerConcurrency?: number;
687
+ /**
688
+ * Default number of concurrent jobs per worker.
689
+ *
679
690
  * @default 5
691
+ * @deprecated Use `workerConcurrency` instead. Will be removed in a future major version.
680
692
  */
681
693
  defaultConcurrency?: number;
682
694
  /**
@@ -731,6 +743,33 @@ interface MonqueOptions {
731
743
  */
732
744
  interval?: number;
733
745
  } | undefined;
746
+ /**
747
+ * Maximum number of concurrent jobs processed by this instance across all registered workers.
748
+ *
749
+ * If reached, the scheduler will stop claiming new jobs until active jobs complete.
750
+ * Use this to prevent a single instance from overwhelming system resources.
751
+ *
752
+ * Note: This is an instance-level limit. Each worker still respects its own `concurrency`
753
+ * setting, but the total across all workers cannot exceed this limit.
754
+ *
755
+ * @example
756
+ * ```typescript
757
+ * const monque = new Monque(db, {
758
+ * instanceConcurrency: 10, // Instance processes max 10 jobs total
759
+ * workerConcurrency: 5, // Each worker defaults to 5 concurrent jobs
760
+ * });
761
+ *
762
+ * // With 3 workers at concurrency 5, normally 15 jobs could run.
763
+ * // With instanceConcurrency: 10, only 10 jobs run at any time.
764
+ * ```
765
+ */
766
+ instanceConcurrency?: number | undefined;
767
+ /**
768
+ * Maximum number of concurrent jobs processed by this instance across all registered workers.
769
+ *
770
+ * @deprecated Use `instanceConcurrency` instead. Will be removed in a future major version.
771
+ */
772
+ maxConcurrency?: number | undefined;
734
773
  }
735
774
  //#endregion
736
775
  //#region src/scheduler/monque.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/jobs/types.ts","../src/jobs/guards.ts","../src/events/types.ts","../src/workers/types.ts","../src/scheduler/types.ts","../src/scheduler/monque.ts","../src/shared/errors.ts","../src/shared/utils/backoff.ts","../src/shared/utils/cron.ts"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1114,27 +1114,57 @@ var JobProcessor = class {
1114
1114
  this.ctx = ctx;
1115
1115
  }
1116
1116
  /**
1117
+ * Get the total number of active jobs across all workers.
1118
+ *
1119
+ * Used for instance-level throttling when `instanceConcurrency` is configured.
1120
+ */
1121
+ getTotalActiveJobs() {
1122
+ let total = 0;
1123
+ for (const worker of this.ctx.workers.values()) total += worker.activeJobs.size;
1124
+ return total;
1125
+ }
1126
+ /**
1127
+ * Get the number of available slots considering the global instanceConcurrency limit.
1128
+ *
1129
+ * @param workerAvailableSlots - Available slots for the specific worker
1130
+ * @returns Number of slots available after applying global limit
1131
+ */
1132
+ getGloballyAvailableSlots(workerAvailableSlots) {
1133
+ const { instanceConcurrency } = this.ctx.options;
1134
+ if (instanceConcurrency === void 0) return workerAvailableSlots;
1135
+ const globalAvailable = instanceConcurrency - this.getTotalActiveJobs();
1136
+ return Math.min(workerAvailableSlots, globalAvailable);
1137
+ }
1138
+ /**
1117
1139
  * Poll for available jobs and process them.
1118
1140
  *
1119
1141
  * Called at regular intervals (configured by `pollInterval`). For each registered worker,
1120
1142
  * attempts to acquire jobs up to the worker's available concurrency slots.
1121
- * Aborts early if the scheduler is stopping (`isRunning` is false).
1143
+ * Aborts early if the scheduler is stopping (`isRunning` is false) or if
1144
+ * the instance-level `instanceConcurrency` limit is reached.
1122
1145
  */
1123
1146
  async poll() {
1124
1147
  if (!this.ctx.isRunning()) return;
1148
+ const { instanceConcurrency } = this.ctx.options;
1149
+ if (instanceConcurrency !== void 0 && this.getTotalActiveJobs() >= instanceConcurrency) return;
1125
1150
  for (const [name, worker] of this.ctx.workers) {
1126
- const availableSlots = worker.concurrency - worker.activeJobs.size;
1127
- if (availableSlots <= 0) continue;
1151
+ const workerAvailableSlots = worker.concurrency - worker.activeJobs.size;
1152
+ if (workerAvailableSlots <= 0) continue;
1153
+ const availableSlots = this.getGloballyAvailableSlots(workerAvailableSlots);
1154
+ if (availableSlots <= 0) return;
1128
1155
  for (let i = 0; i < availableSlots; i++) {
1129
1156
  if (!this.ctx.isRunning()) return;
1157
+ if (instanceConcurrency !== void 0 && this.getTotalActiveJobs() >= instanceConcurrency) return;
1130
1158
  const job = await this.acquireJob(name);
1131
- if (job) this.processJob(job, worker).catch((error) => {
1132
- this.ctx.emit("job:error", {
1133
- error,
1134
- job
1159
+ if (job) {
1160
+ worker.activeJobs.set(job._id.toString(), job);
1161
+ this.processJob(job, worker).catch((error) => {
1162
+ this.ctx.emit("job:error", {
1163
+ error,
1164
+ job
1165
+ });
1135
1166
  });
1136
- });
1137
- else break;
1167
+ } else break;
1138
1168
  }
1139
1169
  }
1140
1170
  }
@@ -1187,7 +1217,6 @@ var JobProcessor = class {
1187
1217
  */
1188
1218
  async processJob(job, worker) {
1189
1219
  const jobId = job._id.toString();
1190
- worker.activeJobs.set(jobId, job);
1191
1220
  const startTime = Date.now();
1192
1221
  this.ctx.emit("job:start", job);
1193
1222
  try {
@@ -1817,7 +1846,7 @@ const DEFAULTS = {
1817
1846
  maxRetries: 10,
1818
1847
  baseRetryInterval: 1e3,
1819
1848
  shutdownTimeout: 3e4,
1820
- defaultConcurrency: 5,
1849
+ workerConcurrency: 5,
1821
1850
  lockTimeout: 18e5,
1822
1851
  recoverStaleJobs: true,
1823
1852
  heartbeatInterval: 3e4,
@@ -1911,10 +1940,11 @@ var Monque = class extends EventEmitter {
1911
1940
  maxRetries: options.maxRetries ?? DEFAULTS.maxRetries,
1912
1941
  baseRetryInterval: options.baseRetryInterval ?? DEFAULTS.baseRetryInterval,
1913
1942
  shutdownTimeout: options.shutdownTimeout ?? DEFAULTS.shutdownTimeout,
1914
- defaultConcurrency: options.defaultConcurrency ?? DEFAULTS.defaultConcurrency,
1943
+ workerConcurrency: options.workerConcurrency ?? options.defaultConcurrency ?? DEFAULTS.workerConcurrency,
1915
1944
  lockTimeout: options.lockTimeout ?? DEFAULTS.lockTimeout,
1916
1945
  recoverStaleJobs: options.recoverStaleJobs ?? DEFAULTS.recoverStaleJobs,
1917
1946
  maxBackoffDelay: options.maxBackoffDelay,
1947
+ instanceConcurrency: options.instanceConcurrency ?? options.maxConcurrency,
1918
1948
  schedulerInstanceId: options.schedulerInstanceId ?? randomUUID(),
1919
1949
  heartbeatInterval: options.heartbeatInterval ?? DEFAULTS.heartbeatInterval,
1920
1950
  jobRetention: options.jobRetention
@@ -2577,7 +2607,7 @@ var Monque = class extends EventEmitter {
2577
2607
  * ```
2578
2608
  */
2579
2609
  register(name, handler, options = {}) {
2580
- const concurrency = options.concurrency ?? this.options.defaultConcurrency;
2610
+ const concurrency = options.concurrency ?? this.options.workerConcurrency;
2581
2611
  if (this.workers.has(name) && options.replace !== true) throw new WorkerRegistrationError(`Worker already registered for job name "${name}". Use { replace: true } to replace.`, name);
2582
2612
  this.workers.set(name, {
2583
2613
  handler,