24 lines
649 B
TypeScript
24 lines
649 B
TypeScript
import { Worker } from 'bullmq';
|
|
import { connection } from '../../.config/bullmq.config.ts';
|
|
import download from '../processors/download.ts';
|
|
|
|
const workerName = 'downloadWorker';
|
|
const queueName = 'downloadQueue';
|
|
|
|
new Worker(
|
|
queueName,
|
|
async (job) => {
|
|
console.log(`${workerName}. we got a job on the ${queueName}. data=${JSON.stringify(job.data)}, job name=${job.name}`);
|
|
switch (job.name) {
|
|
case 'download':
|
|
return await download(job);
|
|
|
|
default:
|
|
throw new Error(`${workerName} Unknown job name: ${job.name}`);
|
|
}
|
|
},
|
|
{ connection, concurrency: 1 }
|
|
);
|
|
|
|
console.log(`${workerName} is running...`);
|