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