ASP.NET View State 缓存属性和概述
ASP.NET View State 是一种强大的机制,可在客户端和 Web 服务器上的多个 HTTP 请求之间存储页面、控件和自定义值。 但是,请务必注意,由于处理和传输视图状态数据,使用视图状态的 ASP.NET 应用程序可能会遇到性能开销。 因此,在 Web 服务器上缓存视图状态会向用户的浏览器发送更小的有效负载,其中仅包含特定视图状态的唯一 ID。 因此,页面使用更少的带宽,从而提高了性能,并且 ASP.NET 应用程序的扩展性也更好。
备注
此功能也可用于 NCache Professional.
为什么 ASP.NET View State 缓存?
视图状态是一个加密文本字符串,其中包含 Web 表单控件和小部件的状态,该字符串被发送到用户的浏览器以在回发期间保留状态。 对于具有大量控件的表单, DataGrid
控件,或其他一些复杂的控件,视图状态可能会变得相当大。
另一个缺点是重 ASP.NET View State 其中增加的带宽使用量显着增加了带宽成本。 例如,如果额外增加 60-100k ASP.NET View State 数据附加到每个 HTTP 请求中,乘以事务总数会导致异常带宽消耗。
此外,作为机密数据的一部分发送存在安全风险。 ASP.NET View State。 此外,在发送之前对其进行加密也是昂贵的。
因此,这就是为什么应该考虑缓存视图状态:
- 大型表单上的视图状态很大(数十 KB),并且
DataGrid
. - 大视图状态会减慢页面下载时间。
- 大视图状态会减慢回发请求时间。
- 在 Web 服务器上缓存视图状态并仅向用户发送令牌。
- 视图状态缓存分布到场中的所有 Web 服务器; 没有单点故障。
NCache的 View State Caching 解决了这些问题,以下是它的一些功能:
提高性能: NCache 减少请求/响应负载,从而提高整体请求时间。
可用性和可靠性: NCache 是一个内存缓存,它分布在所有 Web 服务器上并同步,即使回发请求发送到场中与创建 ViewState 的原始服务器不同的 Web 服务器, NCache 能够在缓存中找到视图状态值。
查看状态及其会话: NCache 允许根据各自的会话对视图状态进行分类。
限制视图状态缓存: 对于具有大量视图状态的较长会话,现在可以将每个会话的视图状态限制为可配置的数量。 元数据用于限制。 元数据也被缓存。 还可以锁定元数据。 可以使用以下命令配置锁定 网页配置 文件中。
视图状态的页面级分组: NCache 允许在页面级别进行分组,可以耦合多个页面来定义一个组。 对于每个组,可以设置不同的配置。
视图状态.xml 是视图状态分组功能所必需的。 这 XML 可以有多个 Web 应用程序配置。 在每个Web应用程序配置中,可以有一个或多个组配置,并且可以为不同的组配置不同的缓存。
在本节中
ASP.NET View State 内容优化配置
解释如何配置和使用内容优化 NCache 领域广泛应用,提供了卓越的解决方案。
团队 ASP.NET View State 与会话
解释如何将视图状态与应用程序中的会话分组。
限制 ASP.NET View State 高速缓存
提供了一种限制每个组和每个会话的视图状态缓存的解决方案。
页面级分组 ASP.NET View State
描述如何在微观级别(即页面级别)执行视图状态缓存。