我使用mongodb在节点js中实现redis缓存它工作正常。但我怀疑在mongodb中我有10条记录。我试图执行我的节点js代码它从db获取数据并存储缓存它的工作正常。假设我从db中删除了数据但它在redis缓存中没有改变。redis缓存它之前的10条记录。数据库更改在redis缓存中没有改变。如何解决它。
redis.js
// var asyncRedis = require("async-redis")
// var myCache = asyncRedis.createClient()
var redis = require('redis');
const client = redis.createClient()
client.on('connect', function () {
console.log('Redis client connected');
});
client.on('error', function (err) {
console.log('Something went wrong ' + err);
});
function Get_Value()
{
client.get('products', function(err,results) {
value = results
})
return value
}
function Set_Value(products)
{
client.set('products', JSON.stringify(products))
}
exports.get_value = Get_Value;
exports.set_value = Set_Value;
路由.js
data = cache.get_value()
if(data)
{
res.send(data)
}
else{
const r = await db.collection('Ecommerce').find().toArray();
res.send(r)
data = cache.set_value(r)
}