2024-09-08 14:10:02 +03:30
|
|
|
const Queue = require("bull");
|
2025-01-21 09:38:14 +01:00
|
|
|
const path = require("node:path");
|
2024-09-08 14:10:02 +03:30
|
|
|
|
|
|
|
const env = require("../env");
|
|
|
|
|
|
|
|
const redis = {
|
|
|
|
port: env.REDIS_PORT,
|
|
|
|
host: env.REDIS_HOST,
|
2024-09-09 18:43:12 +03:30
|
|
|
db: env.REDIS_DB,
|
2024-09-08 14:10:02 +03:30
|
|
|
...(env.REDIS_PASSWORD && { password: env.REDIS_PASSWORD })
|
|
|
|
};
|
|
|
|
|
2024-10-21 14:59:55 +03:30
|
|
|
let visit;
|
|
|
|
|
|
|
|
if (env.REDIS_ENABLED) {
|
|
|
|
visit = new Queue("visit", { redis });
|
|
|
|
visit.clean(5000, "completed");
|
|
|
|
visit.process(6, path.resolve(__dirname, "visit.js"));
|
|
|
|
visit.on("completed", job => job.remove());
|
|
|
|
|
|
|
|
// TODO: handler error
|
2025-01-21 09:38:14 +01:00
|
|
|
// visit.on("error", function (error) {
|
|
|
|
// console.log("error");
|
2024-10-21 14:59:55 +03:30
|
|
|
// });
|
|
|
|
} else {
|
|
|
|
const visitProcessor = require(path.resolve(__dirname, "visit.js"));
|
|
|
|
visit = {
|
|
|
|
add(data) {
|
|
|
|
visitProcessor({ data }).catch(function(error) {
|
|
|
|
console.error("Add visit error: ", error);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-09-09 18:43:12 +03:30
|
|
|
|
2024-09-08 14:10:02 +03:30
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
visit,
|
|
|
|
}
|