Skip to content

bestv2/node-rss-cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rss cache for node

A node cache lib
Can be used alone without a message queue system
Or Can sync data between server or pm2 process depends on redis, or some other message queue.

Install

npm install rss-cache

Usuage

basic cache from cache a function result

const rssCache = new RssCache('mycache', 10 * 60 * 1000)
const key = 'cacheKey'
const value = rssCache.get(() => { return parseInt(Math.random(100) * 100) }, key)

async cache for cache a promise

const rssCache = new RssCache('mycache', 10 * 60 * 1000)
const key = 'cacheKey'
const val = rssCache.get(new Promise((resolve) => {
  setTimeout(() => {
    resolve(parseInt(Math.random(100) * 100))
  }, 1000)
}), key)
val.then((value) => {
  res.write(`get key [${key}]: ${value}`);
  res.end();
})

sync between servers or diffrent processes, depend on redis pub/sub

you can allso depend on others message queue

RssCache.initSync(new RssRedis({channel: 'RssCacheChannel', host: 'localhost'}))

Examples

you can try it with
npm install -g pm2
rm -rf dist && npm run build && cd dist/examples && pm2 start demo.js -i 2
then visist
http://localhost:6060/?key=b
http://localhost:6060/?key=b&type=clear
http://localhost:6060/?key=c&sync=async
in your browser

Releases

No releases published

Packages

No packages published