我想使用 node.js Bull处理预定的作业。基本上我有两个处理器可以处理两种类型的工作。有一个配置器可以配置将使用 cron 添加到公牛队列的作业。
调度器将在一个微服务中,每个处理器将是一个单独的微服务。所以我将拥有 3 个微服务。
我的问题是我对公牛使用了正确的模式吗?
索引.js
const Queue = require('bull');
const fetchQueue = new Queue('MyScheduler');
fetchQueue.add("fetcher", {name: "earthQuakeAlert"}, {repeat: {cron: '1-59/2 * * * *'}, removeOnComplete: true});
fetchQueue.add("fetcher", {name: "weatherAlert"}, {repeat: {cron: '3-59/3 * * * *'}, removeOnComplete: true});
Run Code Online (Sandbox Code Playgroud)
处理器配置器.js
const Queue=require('bull');
const scheduler = new Queue("MyScheduler");
scheduler.process("processor", __dirname + "/alert-processor");
Run Code Online (Sandbox Code Playgroud)
fetcher-configurator.js
const Queue=require('bull');
const scheduler = new Queue("MyScheduler");
scheduler.process("fetcher", __dirname+"/fetcher");
Run Code Online (Sandbox Code Playgroud)
fetcher.js
const Queue = require('bull');
const moment = require('moment');
module.exports = function (job) { …Run Code Online (Sandbox Code Playgroud)