【问题标题】:Combining Session and Cache结合会话和缓存
【发布时间】:2010-04-01 09:19:07
【问题描述】:

为了使我的 Extranet Web 应用程序更快/更具可扩展性,我考虑使用一些缓存机制。对于我们将使用 HTML 缓存的某些页面,请忽略此问题的该技术。

例如:在某个时间点,2500 名经理将同时登录我们的应用程序
(其中大多数具有相同的帐户/项目)

我想将 Account-cachekey 和 Project-cachekey 存储到用户的 Session 中,并使用它从缓存中获取项目。

我本可以简单地将帐户存储到会话中,但这会导致内存中有 2500 个相同的帐户。

是否有更好的解决方案或是否有意义:)?

【问题讨论】:

    标签: asp.net session caching


    【解决方案1】:

    通常将项目添加到会话被视为对可伸缩性产生负面影响。根据您的技术,在使用会话变量(例如在经典 asp 中)时,您可能会遇到扩展到超过 1 个服务器的问题。

    话虽如此,如果性能是您的首要任务,您可以在会话和应用程序变量中缓存数据。我一直认为这种大小的数据集不值得麻烦,因为 sql server 几乎肯定会将这些数据缓存在内存中,而您所节省的只是网络往返。

    最后,首先查看代码和硬件优化以提高性能。迁移到托管/编译代码、减小 html 的大小、优化图像、缩小 JavaScript,当然还有前面提到的 html 缓存——这些都是我首先要考虑的事情。

    【讨论】:

      猜你喜欢
      • 2011-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多