代码之家  ›  专栏  ›  技术社区  ›  Ash

在ASP。NET MVC框架

  •  9
  • Ash  · 技术社区  · 16 年前

    我对使用ASP。NET MVC框架,我希望在缓存MVC web应用程序的各个部分时,能找到一些关于最佳实践的帮助。我知道堆栈溢出使用MVC和一些非常免费的很棒的缓存技术,即使在本地运行,它也比我的应用程序快几英里。

    我有几个问题。

    1. 缓存实际上是如何工作的,如何“启用”它,以及有哪些不同的选项。使用哪种缓存最好?

    2. 我的应用程序有很多数据库事务,列表会定期更改。我担心页面刷新的及时性,因为用户没有得到最新版本的数据。在web应用程序速度和显示“最新”数据之间取得平衡的最佳方法是什么?在处理这个问题时,你们发现了哪些最佳实践?

    3. 如何使用不同的缓存设置缓存不同的部分(我假设是视图)?我假设这可以用子控制器来完成,但我有NFI如何做到这一点。

    4. 我正在使用城堡。Windor与控制器的集成,我不确定这是否会改变什么。

    5. 我们非常感谢任何其他需要注意/小心的事项笔记的最佳实践。

    3 回复  |  直到 16 年前
        1
  •  3
  •   Maxime Rouiller    16 年前

    你可能想看看 Phil Haack post 为了一些甜甜圈缓存。他是ASP的推荐人。净MVC:)

        2
  •  2
  •   oglester    16 年前

    从“最佳实践”的角度来看,您需要考虑在任何使用缓存的应用程序中必须考虑的事情。

    • 流量是否足够高,可以从缓存中受益?
    • 特定数据多久会更改一次?及时性有多重要?
    • 我是否拥有数据访问层?如果是这样,我可以通过实际更改数据来触发缓存中的刷新,从而避免基于时间的过期吗?

    名单还在继续。

        3
  •  1
  •   Craig    16 年前

    您可以使用OutputCache属性轻松缓存视图。我也使用nHibernate缓存机制缓存任何不经常更新的列表。