@backgroundjs/core
Version:
An extendible background job queue for js/ts applications
30 lines (29 loc) • 919 B
TypeScript
import { JobStorage } from "../storage/base-storage";
import { JobQueue } from "./job-queue";
import { Job } from "../types";
export declare class MongoDBJobQueue extends JobQueue {
private readonly mongodbStorage;
constructor(storage: JobStorage, options?: {
concurrency?: number;
maxRetries?: number;
name?: string;
logging?: boolean;
processingInterval?: number;
intelligentPolling?: boolean;
minInterval?: number;
maxInterval?: number;
maxEmptyPolls?: number;
loadFactor?: number;
standAlone?: boolean;
});
/**
* Process jobs with distributed locking
* Override the parent's protected method
*/
protected processNextBatch(): Promise<void>;
/**
* Process a single job with locking
* This is called by the parent class
*/
protected processJob(job: Job): Promise<void>;
}