docs/docs/reference/core-plugins/job-queue-plugin/bull-mqjob-queue-strategy.mdx
This JobQueueStrategy uses BullMQ to implement a push-based job queue on top of Redis. It should not be used alone, but as part of the BullMQJobQueuePlugin.
Note: To use this strategy, you need to manually install the bullmq package:
npm install bullmq@^5.4.2
class BullMQJobQueueStrategy implements InspectableJobQueueStrategy {
init(injector: Injector) => Promise<void>;
destroy() => ;
add(job: Job<Data>) => Promise<Job<Data>>;
cancelJob(jobId: string) => Promise<Job | undefined>;
findMany(options?: JobListOptions) => Promise<PaginatedList<Job>>;
findManyById(ids: ID[]) => Promise<Job[]>;
findOne(id: ID) => Promise<Job | undefined>;
removeSettledJobs(queueNames?: string[], olderThan?: Date) => Promise<number>;
start(queueName: string, process: (job: Job<Data>) => Promise<any>) => Promise<void>;
stop(queueName: string, process: (job: Job<Data>) => Promise<any>) => Promise<void>;
}
<MemberInfo kind="method" type={(injector: Injector) => Promise<void>} />
<MemberInfo kind="method" type={() => } />
<MemberInfo kind="method" type={(job: Job<Data>) => Promise<Job<Data>>} />
<MemberInfo kind="method" type={(jobId: string) => Promise<Job | undefined>} />
<MemberInfo kind="method" type={(options?: JobListOptions) => Promise<PaginatedList<Job>>} />
<MemberInfo kind="method" type={(ids: ID[]) => Promise<Job[]>} />
<MemberInfo kind="method" type={(id: ID) => Promise<Job | undefined>} />
<MemberInfo kind="method" type={(queueNames?: string[], olderThan?: Date) => Promise<number>} />
<MemberInfo kind="method" type={(queueName: string, process: (job: Job<Data>) => Promise<any>) => Promise<void>} />
<MemberInfo kind="method" type={(queueName: string, process: (job: Job<Data>) => Promise<any>) => Promise<void>} />