好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Agenda

Agenda 介绍

Agenda 是基于 node 的 一个 轻量级任务调度类库,它的优势在于轻量级、持久化、使用简单。??

1) 持久化

Agenda 引入mongodb从而实现持久化 。Agenda 将所有的任务(job)存储到mongodb中,对于使用mongodb做 数据库 的项目有天然优势。

2) 结构

在 Agenda 启动时会将预定义好的 processors 遍历一遍,从mongodb中 查询 出符合条件 job(这里的 job 可能不止一条)。对于遍历 查询 出来的job:如果时间已到或者已经是过去时间,那么立即执行;如果时间还未到,那么就延迟执行。

3)API

Agenda 之所以受欢迎,与其简单灵活的 API 是分不开的。

Agenda安装

npm install agenda

使用

const mongoConnectionString = 'mongodb://127.0.0.1/agenda';

const agenda = new Agenda({db: {address: mongoConnectionString}});

// Or override the default collection name:

// const agenda = new Agenda({db: {address: mongoConnectionString,collection: 'jobCollectionName'}});

// or pass additional connection options:

// const agenda = new Agenda({db: {address: mongoConnectionString,collection: 'jobCollectionName',options: {ssl: true}}});

// or pass in an existing mongodb-native MongoClient instance

// const agenda = new Agenda({mongo: myMongoClient});

agenda.define('delete old users',(job,done) => {

User.remove({lastLogIn: {$lt: twoDaysAgo}},done);

});

(async function() { // IIFE to give access to async/await

await agenda.start();

await agenda.every('3 minutes','delete old users');

// Alternatively,you Could also do:

await agenda.every('*/3 * * * *','delete old users');

})();

网站地址 : http://agendajs.com

GitHub: https://github.com/agenda/agenda

网站描述: 基于 node 的 一个 轻量级任务调度类库

Agenda官方网站

官方网站: http://agendajs.com

如果觉得 网站内容还不错,欢迎将 网站 推荐给程序员好友。

查看更多关于Agenda的详细内容...

  阅读:49次

上一篇

下一篇

第1节:consolidate.js    第2节:node-crawler    第3节:nodemon    第4节:Agenda    第5节:axios    第6节:rxdb    第7节:node-mongodb-native    第8节:Koa    第9节:Nodal.js    第10节:synaptic    第11节:Lass.js    第12节:node-postgres【pg】    第13节:nlp.js    第14节:bluebird    第15节:Feathers.js    第16节:Cheerio.js    第17节:Roarr    第18节:Kue    第19节:Mean.js    第20节:SuperAgent    第21节:Nest.js    第22节:pandora    第23节:node-opencv    第24节:nodemailer    第25节:jsdom    第26节:foy    第27节:node-cron    第28节:loopback    第29节:mongoose    第30节:Connect    第31节:node-orm2    第32节:DropIt    第33节:JSON-Server    第34节:Derby.js    第35节:yargs    第36节:node    第37节:node-formidable    第38节:Deno    第39节:sharp    第40节:nock    第41节:SocketCluster    第42节:nvm    第43节:node-clinic    第44节:node-xml2js    第45节:Express    第46节:vm2    第47节:node-red    第48节:pm2    第49节:Notif.me    第50节:Kraken.js    第51节:x-ray    第52节:GraphQL Server    第53节:Primus    第54节:lowdb    第55节:Restify.js    第56节:ora    第57节:socketstream    第58节:carlo    第59节:Mean.IO    第60节:knex.js    第61节:Horizon    第62节:avn    第63节:node-schedule    第64节:Mojito    第65节:ncc    第66节:lyo    第67节:mongous    第68节:ViralJS    第69节:Q.js    第70节:svgo    第71节:gnvm    第72节:Spine.js    第73节:Hapi.js    第74节:async    第75节:Fastify    第76节:rebridge    第77节:debug    第78节:Sails.js    第79节:node_redis    第80节:moleculer    第81节:chalk    第82节:colors.js    第83节:NeDB    第84节:RobotJs    第85节:Inquirer.js    第86节:commander.js    第87节:svg-captcha    第88节:awesome-nodejs    第89节:Node-SpliderApi    第90节:opencv4nodejs    第91节:GitBook    第92节:actionHero.js    第93节:Electrode    第94节:Egg.js    第95节:FlexSearch.js    第96节:passport.js    第97节:nodebestpractices    第98节:nodejieba    第99节:css-colorguard    第100节:istanbul    第101节:Sequelize    第102节:flatiron.js