first commit
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
/**
|
||||
* Copyright (c) 2026 Niolla
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is proprietary and confidential.
|
||||
* Unauthorized copying, modification, distribution, or use
|
||||
* of this file, via any medium, is strictly prohibited.
|
||||
*/
|
||||
|
||||
// app/queues/document.queue.js
|
||||
|
||||
const { Queue } = require("bullmq");
|
||||
const redis = require("../config/redisClient");
|
||||
|
||||
const documentQueue = new Queue("document-generation", {
|
||||
connection: redis,
|
||||
defaultJobOptions: {
|
||||
attempts: 3,
|
||||
|
||||
backoff: {
|
||||
type: "exponential",
|
||||
delay: 2000,
|
||||
},
|
||||
|
||||
removeOnComplete: {
|
||||
age: 3600,
|
||||
count: 1000,
|
||||
},
|
||||
|
||||
removeOnFail: false,
|
||||
},
|
||||
});
|
||||
|
||||
// Event listeners
|
||||
documentQueue.on("error", (err) => {
|
||||
console.error("Document Queue Error:", err);
|
||||
});
|
||||
|
||||
documentQueue.on("waiting", (job) => {
|
||||
console.log(`Document Job ${job.id} waiting...`);
|
||||
});
|
||||
|
||||
documentQueue.on("active", (job) => {
|
||||
console.log(`Document Job ${job.id} started...`);
|
||||
});
|
||||
|
||||
documentQueue.on("completed", (job) => {
|
||||
console.log(`Document Job ${job.id} completed`);
|
||||
});
|
||||
|
||||
documentQueue.on("failed", (job, err) => {
|
||||
console.error(
|
||||
`Document Job ${job.id} failed:`,
|
||||
err.message
|
||||
);
|
||||
});
|
||||
|
||||
module.exports = documentQueue;
|
||||
Reference in New Issue
Block a user