使用Node JS中的节点缓存模块,在设置

时间:2017-08-31 15:07:12

标签: node.js caching node-modules

Node.js版本:v6.10.3 操作系统:Windows

我正在尝试使用Node JS实现缓存。使用节点缓存模块。 我使用下面的代码将数据设置为缓存并从缓存中获取数据。

const NodeCache = require( "node-cache" );

const myCache = new NodeCache( { stdTTL: 3000, checkperiod: 3000} );

obj = { my: "Special", variable: 42 };

myCache.set( "myKey", obj ); // Calling DB, fetch the data and set in to cache for first time when client requests.

value = myCache.get( "myKey" );

console.log('value: ',value);

console.log(JSON.stringify(myCache));

但是一旦我设置了数据,下次当我尝试获取数据时(没有设置数据,就像我已经设置的那样)那么它给了我未定义的值。当我打印缓存时,我看不到值(如下例所示,值为{my:" Special",变量:42})。 因此,值不会持久保存到缓存中。我已经将stdTTL提供为3000毫秒,因此数据应该可以使用3000毫秒,但它不能用于缓存。

我是否需要使用TTL设置内容,或者我们是否有其他设置来获取缓存中保存的值?

0 个答案:

没有答案