在内存节点js中存储值

时间:2016-02-17 04:18:49

标签: node.js express

我使用请求返回节点js中的值。我想将值返回存储在节点js的内存中。此外,该值应该在应用程序启动时初始化。怎么可能实现呢?

2 个答案:

答案 0 :(得分:2)

您可以使用memory-cache模块将项目存储在内存中,如下所示:

var cache = require('memory-cache');

cache.put('foo', 'bar');

// will print 'bar'
console.log(cache.get('foo'))

答案 1 :(得分:0)

Node.js有很多缓存库。我通常在需要时使用lru-cache

var LRU = require("lru-cache")
  , options = { max: 500
              , length: function (n, key) { return n * 2 + key.length }
              , dispose: function (key, n) { n.close() }
              , maxAge: 1000 * 60 * 60 }
  , cache = LRU(options)
  , otherCache = LRU(50) // sets just the max size

cache.set("key", "value")
cache.get("key") // "value"

// non-string keys ARE fully supported
var someObject = {}
cache.set(someObject, 'a value')
cache.set('[object Object]', 'a different value')
assert.equal(cache.get(someObject), 'a value')

cache.reset()    // empty the cache