目前,我使用"GrandStack“作为我的应用程序。我在缓存.I方面面临的挑战是要在客户端和后端维护缓存。
客户端:
我使用的是React,阿波罗客户端:默认情况下,阿波罗客户端在应用程序级别上维护一个存储(使用阿波罗提供的客户端包装整个应用程序)。
在这里..。如果我导航到任何已访问的页面,那么即使在页面刷新时,数据也应该从缓存中服务器。
后端的:我正在使用阿波罗-服务器2+快递+ Neo4j作为DB
有没有办法在服务器上缓存“客户端请求”?如果用户向服务器发出相同的请求,那么数据应该来自服务器缓存?
请帮我提前提供一些参考代码.Thanks。
发布于 2019-01-29 18:36:09
对于同样的场景,我实现了LRU缓存,其中我将查询作为键存储,响应作为值存储。
const LRU = require("lru-cache")
const lruCache = new LRU({
maxElements: 1000,
length: (n, key) => {
return n * 2 + key.length
},
dispose: function (key, n) {
// n.close()
},
maxAge: 1000 * 60 * 60
})设置值lruCache.set(key, value)和获取const data = lruCache.get(key);
“关键”是你的要求。
还有其他选择,但这是最受欢迎的(这就是我所相信的)。
https://stackoverflow.com/questions/54414649
复制相似问题