A simple in memory cache to use with javascript.
npm install node-dummy-cache
Import inside your code:
varcacheFactory=require('node-dummy-cache');Download lib/dummy-cache.js.
Import inside HTML:
<scripttype="text/javascript" src="dummy-cache.js"></script>For old browsers you will also need json2.js.
varusers=cacheFactory.create(cacheFactory.ONE_HOUR);users.put(1,{name : 'A'});varuser=users.get(1);varusers=cacheFactory.create(cacheFactory.ONE_HOUR,function(id,callback){// Do complex stuff herecallback(undefined,user);});users.get(1,function(err,user){// You got it});Before:
functiondummy(a,b,c,callback){// Do complex stuff herecallback(undefined,'A','B');};dummy(1,2,3,function(err,data1,data2){// You got it});Adding cache:
vardummy=cacheFactory.create(cacheFactory.ONE_HOUR,function(a,b,c,callback){// Do complex stuff herecallback(undefined,'A','B');});dummy(1,2,3,function(err,data,data2){// You got it});varusers=cacheFactory.create(cacheFactory.ONE_HOUR,function(id,callback){// Do complex stuff herecallback(undefined,user);});users.get(1,function(err,user){// You got it});users(1,function(err,user){// You got it});varuser=users.get(1);// Returns only if cacheduser=users(1);// Returns only if cachedvarusers=cacheFactory.create(cacheFactory.ONE_HOUR,function(id1,id2,callback){// Do complex stuff herecallback(undefined,user,date);});users.get(1,2,function(err,user,date){// You got it});varuser=users.get(1,2);// Returns the user only if cachedusers.put(1,2,user);// Adds the user, but no dateAll arguments passed to the get / put must be JSON serializable.
Creates a new cache.
Params:
- maxAliveTimeMS : Max time a value will stay in cache starting with its creation
- maxNotAccessedTimeMs : Max time a value will stay in cache after its last access
- fetcher : callback to fetch the data
Creates a new cache.
Params:
- maxAliveTimeMS : Max time a value will stay in cache starting with its creation
- fetcher : callback to fetch the data
Creates a new cache. All values must be added to cache using put.
Params:
- maxAliveTimeMS : Max time a value will stay in cache starting with its creation
- maxNotAccessedTimeMs : Max time a value will stay in cache after its last access
Creates a new cache. Values never expires.
Params:
- fetcher : callback to fetch the data
Creates a new cache. All values must be added to cache using put.
Params:
- maxAliveTimeMS : Max time a value will stay in cache starting with its creation
Creates a new cache. Values never expires. All values must be added to cache using put.
MIT. Check LICENSE file.
