1

我正在构建一个 MVC 应用程序,它使用 Knockout、JQuery 和 JSON 等进行繁重的客户端脚本。

这个网络应用程序有很多图表用于业务数据洞察和分析目的。JQuery Ajax 调用返回 JSON 的 MVC WebAPI 并使用 Jquery 和 Knockout 重新呈现图表。

有人可以建议在 MVC Web 应用程序上缓存大量数据的良好做法吗?

任何帮助都感激不尽。

4

1 回答 1

1

我理解你的问题的方式是双重的:

  1. 我应该缓存哪些数据?
  2. 我应该如何缓存它?

我应该缓存哪些数据?

当然,这取决于。大多数时候,您希望缓存经常使用但很少更改或计算成本高昂的数据。有时您需要缓存一个或多个对象,而在其他时候您需要缓存整个页面。同样,此决定取决于您的特定业务需求。

我应该如何缓存它?

有几种方法可以做到这一点,它们将取决于您要缓存的内容。

缓存对象

如果多台服务器上的数据可用性不是问题,您可以使用内置缓存对象将数据存储一段时间。有关如何在 ASP.NET 中缓存项目的讨论,请参阅此线程。但是,如果您有一个具有非粘性请求的网络场,那么您可能会考虑设置一个memcached 服务器来实现非常高性能、可扩展的缓存。

缓存输出/页面

缓存这些的最简单方法是将OutputCache属性添加到需要它的控制器操作中。查看链接以了解一些不错的用途(例如根据参数缓存页面的不同版本)。

于 2012-05-04T05:39:49.443 回答