我应该像这样使用 redis :req.session.surname = 'toto' 还是像这样 client.set('surname', 'toto')

should i use redis like this : req.session.surname = 'toto' or like this client.set('surname', 'toto')

怎么了!我将 redis 与 express 和 nodejs 一起使用。在查看如何从 Redis 插入或检索数据时,我看到了两种方法,一种是这样的:

req.session.surname = 'toto'
console.log(req.session.surname)

另一种方式是这样的:

client.set('surname', 'toto')
client.get('surname', (err, data) => {
    console.log(data)
})

这两种方法有区别吗? 谢谢你的帮助。干杯!

这两种方法没有什么大的区别。在第一个中,如果您需要更高的可靠性,您可以使用任何其他会话存储,如 mongo-db(因为 redismemcached 有可能丢失数据,因为数据将存储在 RAM 中只要)。第二个只是 设置和获取 密钥的期望值,用于不需要 100% 可靠性的一般用途。同时处理请求时你也会遇到问题,因为没有像 redis 这样的内存缓存数据库的并发控制。

如果您需要 100% 的可靠性(如果您不想轻易丢失数据),您可以选择 mongo-db。在 mongo-db 中,数据将被持久存储,我们也可以控制并发性。