缓存服务器,如Redis Vs Static变量

时间:2015-02-23 06:34:08

标签: c# caching static stackexchange.redis

我想缓存一个不超过300项的对象数组,它是只读数组。 首先,我使用 StackExchange.Redis 客户端在Redis中实现它,然后通过静态变量实现它。 静态变量具有更好的性能,并且使用较少的CPU而不是Redis,但我不知道这是好方法吗?

2 个答案:

答案 0 :(得分:2)

如果数据是真正静态的,那么当你可以用redis存储数据时,你通常每次都会进行redis - 所以它可能会结束反正拥有本地缓存​​ (将redis作为二级缓存)。 static对于像只读数组这样的东西可以正常工作,这在性能方面是无与伦比的。但是,如果你开始改变static成员的内容:期待痛苦。

答案 1 :(得分:1)

在我的一个项目中,我们使用redis进行缓存,我们也使用了本地缓存(非静态变量,但你也可以使用静态变量)。

但这实际上取决于您的要求。我们使用redis是因为我们有web farm,我们想在服务器之间共享数据。我们还使用了本地缓存(see MemoryCache)来提高性能。