【发布时间】:2013-03-02 03:54:07
【问题描述】:
Caching ASP.NET Pages 在 Azure 上时有什么特别的注意事项吗? 我知道页面缓存由 IIS 在内存中管理,但它是否依赖与 asp.net 缓存相同的提供程序?
我需要缓存数百个平均为 100KB 的页面,我想知道这是否会在 Azure 上按预期运行,因为 Azure 存在内存限制考虑。
【问题讨论】:
标签: c# asp.net azure azure-caching
Caching ASP.NET Pages 在 Azure 上时有什么特别的注意事项吗? 我知道页面缓存由 IIS 在内存中管理,但它是否依赖与 asp.net 缓存相同的提供程序?
我需要缓存数百个平均为 100KB 的页面,我想知道这是否会在 Azure 上按预期运行,因为 Azure 存在内存限制考虑。
【问题讨论】:
标签: c# asp.net azure azure-caching
我推荐Azure Cache services 用于输出缓存 ASP.NET 页面。它配置简单,可供部署中的所有 VM 节点使用。
Azure 缓存依赖于DistributedCacheOutputCacheProvider。你也可以控制你的Cache Quota size。
【讨论】:
完全同意@SilverNonja cmets,但我只是想评论一下“Azure 上的内存限制考虑”。由于 Windows Azure 内存的限制,我不认为您的目标受到限制,因为您肯定可以在单个 VM 中获得很多,但是您可以从一个 VM 中为那么多用户提供服务。您确实必须运行同一应用程序的多个实例,然后拥有本地计算机特定的缓存是问题所在。
使用云解决方案,您有多个实例正在运行,创建基于本地缓存的解决方案会带来几个问题,因为请求在不同时间由不同的实例提供服务。拥有一个共享资源的集中位置是最好的,所有实例都可以在其中查找数据是最好的方法,这就是为什么 Windows Azure 缓存是可供您使用的最佳/快速选项的原因。
这里还有一个非常简单的示例,用于将 Azure Cache 与 ASP.NET 应用程序一起使用: https://www.windowsazure.com/en-us/develop/net/how-to-guides/cache/
【讨论】:
您可能想尝试最新的 Windows Azure 缓存(预览版)。它具有更好的功能集和改进的延迟。欲了解更多信息 - http://social.msdn.microsoft.com/Forums/en-US/windowsazuredata/thread/9a2dbd9f-1b9d-4249-a48b-216d9dfdc2bc
【讨论】: