0

我有一个使用服务器端缓存的 MVC API 项目。它部署到 Azure 应用服务。我想利用应用服务本地缓存来克服保持缓存跨节点同步的挑战。这是正确的方法吗?如果是,我如何从我的代码中修改缓存。PS:我对使用 Redis Cache 不是很感兴趣。

4

1 回答 1

0

我想利用应用服务本地缓存来克服保持缓存跨节点同步的挑战。

跨节点同步是什么意思?多个 webapp 应用程序是否共享缓存数据?

HttpRuntime.Cache只能在单个 webapp 应用程序中使用,不能被其他 webapp 访问。一旦创建了每个缓存,它就会占用服务器资源。所以从这一点我们可以说:并不是缓存越多越好。缓存有时间限制。过了服务器设置的过期时间,会被服务器回收。缓存可以存储任何对象。

所以想要跨站点共享缓存数据是不可能实现的,这也是redis缓存出现的原因。

如果实在不想使用redis缓存,那么可以将需要的数据存储在sql server中。这只能是一个替代方案,而不是最好的。

于 2020-08-21T08:04:06.567 回答